Bitcoind

閃電節點守護程序掛在“等待鏈後端完成同步,start_height=521042”

  • May 7, 2018

我在 Windows 中使用 Lightning Networks 的 lnd 0.4.1-beta 節點,帶有 Bitcoin Core bitcoind 全節點後端。bitcoind 全節點有 –txindex 選項,根據 bitnodes.earn.com 完全同步

我已經將bitcoind 配置為使用ZMQ,並且確實netstat -a -b顯示bitcoind 正在28332 上監聽ZMQ 連接。Bitcoin.conf 配置為:

# 由 https://jlopp.github.io/bitcoin-core-config-generator/ 生成

# 此配置應放置在以下路徑中:
# %UserProfile%\AppData\Roaming\Bitcoin\bitcoin.conf

調試=0
日誌=1
列印控制台 = 1
交易指數 = 1
zmqpubrawblock=tcp://127.0.0.1:28332
zmqpubrawtx=tcp://127.0.0.1:28332
zmqpubhashblock=tcp://127.0.0.1:28332
zmqpubhashtx=tcp://127.0.0.1:28332

# [錢包]
錢包=wallet1.dat
錢包=wallet2.dat

# [核]
# 指定配置文件的位置。要使用非預設位置,請創建包含此設置的預設位置配置文件。
conf = E:\\比特幣核心
# 指定一個非預設位置來儲存區塊鍊和其他數據。
數據目錄=E:\\數據
# 設置數據庫記憶體大小,以兆字節為單位;機器使用更大的記憶體可以更快地同步。建議根據機器的可用 RAM 設置盡可能高。
數據庫記憶體=12288
# 保持事務記憶體池低於兆字節。
最大記憶體池 = 3072
# 額外的事務保存在記憶體中以進行緊湊的塊重建。
塊重建extraxn = 512
# 設置腳本驗證執行緒數。(1 到 CPU_CORES,0 = 自動,小於 0 = 保留那麼多核心空閒)。
標準桿=0
持久記憶體池=1

# [網路]
聽=1
埠=8333
綁定=0.0.0.0
聽音=0
# 每個連接的最大發送緩衝區 (KiB)。
最大發送緩衝區=2000

# [費用]
# 如果在傳出交易中未指定費用,則使用費用
備份費用=0.0002
# 低於此金額的費用被視為零費用
丟棄費=0.000025
# 允許對未確認的交易進行費用替換
錢包rbf=1
# 傳出交易的最高費用
maxtxfee=0.01

# [rpc]
# 接受命令行和 JSON-RPC 命令。
伺服器=1
rpcuser=<使用者名>
rpcpassword=<密碼>
rpcallowip=192.168.0.39
rpcallowip=192.168.0.33
rpcallowip=192.168.0.32
rpcallowip=192.168.0.40

lnd.conf 有以下內容

調試級別=調試
logdir=E:\lnd\data\logs
lnddir = E:\ lnd
數據目錄=E:\lnd\數據
比特幣.活躍=1
比特幣.mainnet-1
比特幣節點=比特幣
bitcoin.chaindir = E:\lnd\data\比特幣鏈
bitcoind.dir=E:\data
bitcoind.rphost=本地主機
bitcoind.rpcuser = & ltusername & gt
bitcoind.rpcpass=<密碼>
bitcoind.zmqpath=tcp://127.0.0.1:28332
autopilot.active=1
externalip=<x.xxx>

(不用說,user/pass 和 externalip 並不是字面上列出的那些值)。

為簡潔起見,刪除了日期和時間列的 lnd.log:

[INF] LTND:版本 0.4.1-beta 送出=
[INF] LTND:活動鏈:比特幣(網路=主網)
[INF] CHDB:檢查架構更新:latest_version=0,db_version=0
[INF] RPCS:正在生成 TLS 證書...
[INF] RPCS:完成生成 TLS 證書
[INF] RPCS:密碼 RPC 伺服器監聽 127.0.0.1:10009
[INF] RPCS:密碼 gRPC 代理開始於 127.0.0.1:8080
[INF] LTND:等待錢包加密密碼。使用 `lncli create` 創建錢包,或使用 `lncli unlock` 解鎖已創建的錢包。
[INF] LNWL:打開的錢包
[INF] LTND:主鏈設置為:比特幣
[INF] LTND:初始化比特幣支持的費用估算器
[INF] LNWL:打開的錢包
[INF] LNWL:開始通過 ZMQ 在 tcp://127.0.0.1:28332 上偵聽塊
[INF] LNWL:錢包已解鎖無時間限制
[INF] LTND:閃電錢包開通
[INF] LNWL:從塊 0000000099c744455f58e6c6e98b671e1bf7f37346bfd4cf5d0274ad8ee660cb(高度 10000)開始重新掃描 0 個地址
[INF] LNWL:從塊 0000000099c744455f58e6c6e98b671e1bf7f37346bfd4cf5d0274ad8ee660cb 開始重新掃描
[INF] HSWC:從磁碟恢復記憶體電路狀態
[INF] HSWC:已載入支付電路:num_pending=0,num_open=0
[INF] RPCS:RPC 伺服器監聽 127.0.0.1:10009
[INF] RPCS:gRPC 代理開始於 127.0.0.1:8080
[INF] LTND:等待鏈後端完成同步,start_height=521042

lnd 守護程序已經Waiting for chain backend to finish sync, start_height=521042執行了 20 分鐘,沒有任何變化。bitcoind 現在報告它剛剛收到塊 521044。

沒有切換到 btcd 後端,我能做些什麼來讓 lnd 工作嗎?


我問了一個關於比特幣核心 0.16.0 中的 ZeroMQ 支持的單獨問題

我在 GitHub 上對 lnd 儲存庫提出了問題。@Roasbeef (!) 回答 - 看來我的 lnd 守護程序實際上可能正在按預期執行。

在 Windows 上執行 bitcoind 和 lnd 時,請確保在 lnd 命令行或 lnd.conf 文件中指定參數127.0.0.1而不是參數。localhost``rpchost

由於某些未知原因,Windows 似乎在解析localhost.


我已經向 lnd github repo 送出了一個拉取請求,以更新文件以反映上述詳細資訊。

引用自:https://bitcoin.stackexchange.com/questions/74687