Successfully reported this slideshow.
Your SlideShare is downloading. ×

ライトニングノードをいじってみよう

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 20 Ad
Advertisement

More Related Content

Similar to ライトニングノードをいじってみよう (20)

Advertisement

More from takayaimai (20)

Recently uploaded (20)

Advertisement

ライトニングノードをいじってみよう

  1. 1. ライトニングノードを いじってみよう Takaya Imai CEO@Frontier Partners LLC Co-founder and CTO@United Bitcoiners Inc.
  2. 2. まだ未完成ですが、 取り急ぎ公開します
  3. 3. 初初級の振り返り
  4. 4. ライトニングノード構 成 btcdlnd neutrino Bitcoin P2P NetworkLightning P2P Network
  5. 5. ライトニングノード セットアップ [Application Options] ;externalip=xxx.xxx.xxx.xxx:9735 debuglevel=info noencryptwallet=1 ;alias=xxxx [Bitcoin] bitcoin.active=1 bitcoin.testnet=1 bitcoin.node=neutrino bitcoin.defaultchanconfs=1 [neutrino] neutrino.connect=faucet.lightning.community [autopilot] autopilot.active=1 autopilot.maxchansize=100000 lnd.confの中身
  6. 6. lnd立ち上げオプション • 頻繁にオプションの種類が増えている • 通常はlnd.confに記載する • bitcoin.minhtlc <- 最低送金転送料(デフォ: 1000msat) • bitcoin.basefee <- 送金転送基本手数料(デフォ: 1000msat) • bitcoin.feerate <- 送金転送の送金額依存手数料(デフォ: 1) • bitcoin.timelockdelta <- 送金転送時のHTLCタイムロック値指定に使用(前のHTLCタ イムロック値からこの数字を引いて指定。デフォ: 144ブロック(約1日)) • ライトコインもlndで扱える • litecoin.nodeなどで接続先ライトコインノードを指定
  7. 7. lnd操作コマンド概観 • lncliコマンドを使ってlndを操作する • lnd利用開始&状況把握 • create • getinfo • newaddress • walletbalance
  8. 8. lnd操作コマンド概観 • lncliコマンドを使ってlndを操作する • チャネル開設操作 • connect • listpeers • openchannel • listchannels • channelbalance • decodepayreq • sendpayment • addinvoice • closechannel
  9. 9. lnd操作コマンド概観 • lncliコマンドを使ってlndを操作する • ネットワーク状況把握 • describegraph • getnetworkinfo • queryroutes • ノードフォワードポリシー把握 • feereport • updatechanpolicy
  10. 10. チャネルを開く • コマンドラインを通じて、チャネルを開いてみましょう
  11. 11. チャネルを開く • 繋ぎに行くノードを探す • $ lncli describegraph | less • ライトニングネットワークのノード全体が表示されます。 • 起動し始めた段階だと、何も表示されないか、または数個のノードだけしか表示されないかもしれません。 • 2000ノードくらいあるので、lncli describegraph だけだと一気に表示されて終わります。 • この中から、IPアドレスが公開されているノードを探してみてください
  12. 12. チャネルを開く • 繋ぎに行くノードを探す • describegraphはよいのですが、そのノードがどれくらいチャネルを持っているのか、長く管理されているのかがわかりづらいで す。 • ノードが現時点で生きていなくてもdescribegraphに表示されるので、繋ぎに行っても応答がないこともしばしば。 • このため、https://explorer.acinq.co からチャネル数が比較的多いものを選んで繋ぎに行くと応答があることが多いです。
  13. 13. チャネルを開く • コネクションをはる • $ lncli connect [Public key(node id)]@[IP address]:[port] • Public key(node id)は、`getinfo`で • 例: $ lncli connect 023ea0a53af875580899da0ab0a21455d9c19160c4ea1b7774c9d4be6810b02d2c@160.16.233.215:9735 • チャネルを開く • $ lncli openchannel [Public key(node id)] デポジット額(satoshi単位) • $ lncli openchannel 023ea0a53af875580899da0ab0a21455d9c19160c4ea1b7774c9d4be6810b02d2c 300000 • —connectを使ってもよい • —private <- プライベートチャネル • —remote_csv_delay <- 相手が一方的クローズをした時に何ブロック資金をロックするように要求するか • 確かyallsはすごく長く設定されていたはずです
  14. 14. チャネルの状況を確認 $ lncli getchaninfo 579859342764867585
  15. 15. ネットワークの状況を確認 $ lncli getnetworkinfo
  16. 16. ウォレット残高と チャネル残高 $ lncli walletbalance $ lncli channelbalance
  17. 17. 手数料等チャネルパラメータ の動的変更 $ lncli updatechanpolicy -help
  18. 18. 手数料等チャネルパラメータ の動的変更 i updatechanpolicy 1000 0.000001 144 fc9387c6e99b0dfb5f2e5882364f43f50f873ab7fba22e15d9965a419f119 設定がうまくいった場合
  19. 19. 手数料ポリシーの確認 $ lncli feereport
  20. 20. 送金ルートの確認 $ lncli queryroutes 023668a30d0a27304695df3fb1af55a4fb75153eac34840817cae0e6a57894fd

×