私は、Bitcoin クライアントができるように、2 つのピアツーピア クライアントがメッシュ ネットワークでどのように相互に参加できるかに興味があります。
では、ビットコインを起動すると、クライアントはどのように他のすべてに参加するのでしょうか? どのようにして最初のピア (他のピアがどこにいるかを知っている可能性があります) を見つけますか?
ありがとう!
私は、Bitcoin クライアントができるように、2 つのピアツーピア クライアントがメッシュ ネットワークでどのように相互に参加できるかに興味があります。
では、ビットコインを起動すると、クライアントはどのように他のすべてに参加するのでしょうか? どのようにして最初のピア (他のピアがどこにいるかを知っている可能性があります) を見つけますか?
ありがとう!
ビットコイン クライアントは、いくつかの方法を使用して他のクライアントを見つけます。主な方法は、ネットワークへの以前の接続からのノードのリストです。は、最初の接続または非常に長い間切断された後の接続を除いて、すべてに対して非常にうまく機能します。
以前の既知の IP がないか、使用できない場合の主なフォールバック方法は、DNS シードによるものです。いくつかのホスト名 (dnsseed.bluematt.me など) が維持され、実行中のノードであることがわかっている IP アドレスのリストに解決されます。それが失敗した場合、クライアントには、ハードコーディングされた安定したノードを指していると思われる IP アドレスのリストがあります。
以前は使用されていましたが、現在は使用されていない方法の 1 つは、クライアントが IRC サーバーを使用して互いの位置を特定することでした。これは、BitTorrent トラッカーと同様に機能しました。
ネットワークに接続すると、既知のクライアントの IP アドレスとポートのリストを受信し始めます。
ソース: https://bitcoin.stackexchange.com/questions/3536/how-bitcoin-clients-find-each-other