• Home
  • ビットコイン初回接続先探索法

ビットコイン初回接続先探索法

P2P(Peer to Peer)で動作しているBitcoinの初回接続先探索方法の調査結果をまとめる。

現行のBitcoin(BitcoinCore0.18.1)には2つの接続先探索方法が存在する。

Addr

「シードノード」と呼ばれる固定IPアドレスのリスト(nodes_main.txt)が付属している。
クライアントはネットワークに一度も接続したことがない場合、このリストのノードの1つに接続してアドレスデータベースを更新する。コマンドラインの”-addnode”オプションを使用してノードを手動で追加、”-connect”オプションを使用して特定のノードにのみビットコインを強制的に接続することが可能となる。

DNS

DNSのリスト(chainparams.cpp)に記載された8つのDNS(2019/09/19 現在)からいくつかのホスト名のIPアドレスを検索し、それらを潜在的なアドレスのリストに追加する。
BitcoinCore0.6.x以降のデフォルトのシードメカニズム。

その他・IRC

BitcoinCore0.6.x以前に使用されていた接続先探索方法。
irc.lfnet.orgの#bitcoin00と#bitcoin99の間のランダムチャネルに参加し、チャネルに参加している nick一覧をdecodeすることで、現在ビットコインに接続されているすべてのIPアドレスのリストを取得する方式。
BitcoinCore0.8.2以降、この方式はサポートされていない。

詳細はBitcoin Wikiを参照

ご相談・お見積もり

03-5207-2689