ビットコインフルノードデビュー

ビットコインフルノードデビュー

ビットコインフルノードを立てると3000円分のsatoshiがもらえるということなのでフルノードを立てました。

というのは嘘で、もともとライトニングノードが立てたくてフルノードを立ててたんですが、忙しくて放置していたら今になってしまったという感じです。(もらえるならポイントは欲しいです)

証拠写真

getinfoの結果

マシンスペック

ラズパイ4で立てるのが流行ってますが、家に余っていたミニPCがあったのでそれを有効活用しました。追加購入が必要だったのは1TBのSSDと有線でつなぐためのスイッチングハブのみです。電気代的にはラズパイが有利だと思います。

構築手順(ざっくり)

同期に時間がかかりすぎて記憶がうっすらなのでざっくりした構築手順です。

  • マシンにもともとWindowsが入っていたのでUbuntu20.04に入れ替え。

Windowsは消去しました。ヘッドレスインストールも考えたんですが、GUIあったほうがアプリでいろいろできるかなということで。必要最小限のアプリだけインストールするオプションがあったのでそれでGUIもインストールしました。

  • LNDのインストール

https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md#installing-lnd-from-source

"Installing lnd from source"で入れました。事前にgoも入れとく必要があった気がします。

  • btcdのインストール

LNDを選んだのでフルノードの実装はあまり考えないでbtcdにしてしまいましたが`make btcd`で入るのでとても楽です。

と思いきや、これだけでは`btcctl`などのコマンドが入っていないという落とし穴があり、結局btcdの方も`git clone`してきてコマンドだけ入れ直すという顛末になりました。

  • 同期

`btcd --testnet --rpcuser=REPLACEME --rpcpass=REPLACEME`

みたいにオプションをつけて起動すれば同期が始まりますが、configファイルは別に書いておくと良いでしょう。特にマウントした1TBのストレージのpathを指定しないといけないので、オプションを毎回書いてはいられません。

起動時のカレントディレクトリか、`~/.btcd/btcd.conf`に設定を書いておくとbtcdが起動時に読みに行ってくれます。

btcd.confはbtcdのリポジトリにサンプルがあるのでそれをコピペして改変しましょう。

https://github.com/btcsuite/btcd/blob/master/sample-btcd.conf

絶対設定が必要なのは、

  • datadir
  • rpcuser
  • rpcpass

お好みでtorの設定などもできます。

ちなみにtxindexを有効にしていない場合フルノード同期後もrawtransactionを読めないということみたいです。

https://yukiosugiyama.com/crypto/post-2576/

ジェネシスブロックのsatoshiのメッセージなどはcoinbasetxに入っているはずなのですが、getrawtransactionで読めず。後で知って悲しかったです(ジェネシスブロックはハードコーディングされてるはずなのでソースコード読めばいいとは思うんですが)。なにか方法があったら教えてください。txindexを有効にして再同期するとかなり時間が掛かりそうで二の足を踏んでいます。

  • 同期にかかった時間

一応開示時刻と完了時刻をメモっていたのですが12日ほどでした。ちょっとかかりすぎですね。途中でネットが切れたりしていたのであまり参考にならないかと思います。

その他

一通りbtcdのjson RPC APIをいじって遊んでいましたが、だいたい触ったんでLNDの方をぼちぼち触っていこうかと考えています。

(umbrelのほうが敷居が低そうだからそのほうが良かったかなあとすでに若干後悔している)

これでも進めていこうかな

https://dev.lightning.community/tutorial/index.html

この続き : 0字 / 画像 0枚
100

会員登録 / ログインして続きを読む

関連記事

記事を書いた人

SNSにシェア

このクリエイターの人気記事

IPFSでファイルを半永久的に共有することが「できます」。

924

金を積立で買うならどこがお得か?

758

IPFSは永続的にコンテンツをホストできるWebではない

663