3

我对两个点对点客户端如何像比特币客户端一样在网状网络中相互连接很感兴趣。

因此,当我启动比特币时,我的客户如何加入所有其他人?它如何找到第一个对等点(可能知道其他对等点在哪里)?

谢谢!

4

1 回答 1

7

比特币客户端使用多种方法来定位其他客户端。主要方法是从先前连接到网络的节点列表。除了您的第一次连接或长时间断开连接后的连接之外,该方法非常适用。

对于您之前没有已知 IP 或它们不可用的情况,主要的后备方法是通过 DNS 种子。维护了几个主机名(例如 dnsseed.bluematt.me),它们解析为已知正在运行的节点的 IP 地址列表。如果失败,客户端会有一个 IP 地址列表,据信这些 IP 地址指向硬编码到其中的稳定节点。

曾经使用过但后来被放弃的一种方法是让客户端使用 IRC 服务器相互定位。这类似于 BitTorrent 跟踪器。

连接到网络后,您将开始收到已知客户端的 IP 地址和端口列表。

资料来源:https ://bitcoin.stackexchange.com/questions/3536/how-bitcoin-clients-find-each-other

于 2013-11-13T14:21:41.337 回答