在 ut_holepunch 中,中继对等点如何连接到目标对等点?

问题描述 投票:0回答:1

在 liubtorrent 的

ut_holepunch
的背景下,我们假设:

  • 发起对等本地端点是

    1.2.3.4:6881
    ,映射地址是
    5.6.7.8:5881
    现在,当对等点向跟踪器宣布时,跟踪器将保存
    5.6.7.8:6881
    ,因为
    6881
    是对等点宣布的端口,但它不是面向现实世界的端口。

  • 目标对等本地端点是

    9.10.11.12:6882
    ,映射地址是
    13.14.15.16:5882
    现在,当对等点向跟踪器宣布时,跟踪器将保存
    13.14.15.16:6882
    ,因为
    6882
    是对等点宣布的端口,但它不是面向现实世界的端口。

bep0055 指出:

发起节点向中继节点发送会合消息, 包含目标对等点的端点(IP 地址和端口)。如果 中继对等点连接到目标对等点,并且目标对等点 支持此扩展,中继对等方发送连接消息到 发起对等点和目标对等点,每个都包含 另一个的端点。收到连接消息后,每个对等体 发起与另一个对等方的 uTP [2] 连接。

因此,当发起对等点向某个中继对等点发送集合消息时,中继对等点必须连接到目标对等点才能工作,但如果跟踪器的目标对等点端口错误,则不会连接任何中继对等点全部交给那个同伴

bittorrent libtorrent hole-punching utorrent
1个回答
0
投票

您应该将消息发送到已连接到目标对等点的中继对等点。哪一个适合可以通过搜索 PEX 的对等列表来找出 (BEP 11)

© www.soinside.com 2019 - 2024. All rights reserved.