21

我试图了解磁链接如何工作,因为我已经读过他们使用 DHT 和 PEX 来获取对等点,但是如果我是网络中的一个新节点,我如何才能找到只有散列的对等点文件?!它不是总是需要到已知主机的链接吗?

谢谢

4

1 回答 1

26

bittorrent DHT 可以通过多种方式进行引导。它只需要任何其他可访问的 DHT 节点的 IP 和端口。

当前客户通常使用以下几种策略:

  • 从前一个会话的长寿命节点缓存中引导
  • 使用 DNS A/AAAA 记录映射到具有已知端口的已知节点(例如 router.bittorrent.com 或 dht.transmissionbt.com)
  • 使用嵌入在 .torrent 文件中的节点
  • 通过通过其他方式(例如传统跟踪器)建立的 bittorrent 连接 从 bittorrent 客户端检索DHT 端口。
    • 如果对等点嵌入在磁力链接中,则还可以通过端口消息在其上搭载 DHT 引导程序
  • 通过LSD发现多播邻居
  • 从 IPv4 到 IPv6 DHT 的交叉对话,反之亦然(如果需要)

其他方式,例如用户可配置的引导列表、DNS SRV 记录到活动节点的循环映射,或者 - 如果其他一切都失败 - 手动添加您朋友的 IP。

一旦一个节点加入网络,上面提到的第一个策略就会启动,它不太可能需要再次引导。

因此,尽管为了方便起见,大多数实现依赖于单个/几个网络入口点,但协议本身也足够灵活,可以分散入口点。

只是为了强调: DHT 中的任何节点都可以用来加入网络。专用引导节点是一个实现细节,不是协议的一部分,如有必要,可以用其他发现机制代替。

于 2012-06-18T19:29:34.363 回答