求助,公网ip,我没办法访问自己的dht系欸按

给你看一下吧,这才是正确的代码连接DHT结果
发送udp包

BitTorrent DHT Protocol
    Request arguments: Dictionary...
        Key: a
        Value: Dictionary...
            id: 05ac9e054f64f9a97cc943a5428df4d80e3903b5
                Key: id
                Value: 05ac9e054f64f9a97cc943a5428df4d80e3903b5
            target: 05ac9e054f64f9a97cc943a5428df4d80e3903b6
                Key: target
                Value: 05ac9e054f64f9a97cc943a5428df4d80e3903b6
            Terminator: e
    Request type: find_node
        Key: q
        Value: find_node
    Transaction ID: 19a7ed0de31316c2
        Key: t
        Value: 19a7ed0de31316c2
    Message type: Request
        Key: y
        Value: q
    Terminator: e

DHT超级节点服务器ip返回

BitTorrent DHT Protocol
    Response values: Dictionary...
        Key: r
        Value: Dictionary...
            id: 0453a561c6bf8b6f9a83b6c941b3fcb7707ddf8a
                Key: id
                Value: 0453a561c6bf8b6f9a83b6c941b3fcb7707ddf8a
            nodes: 8
                Key: nodes
                Value: 8 nodes
                    Node 1 (id: 0555e854ecfbbd57d9950961306d285891b54bf9, IPv4/Port: 31.45.56.6:35265)
                        ID: 0555e854ecfbbd57d9950961306d285891b54bf9
                        IP: 31.45.56.6
                        Port: 35265
                    Node 2 (id: 05df88f1f1bbe9ebb3a6db3c870c3e99245e0d90, IPv4/Port: 95.25.237.189:10829)
                        ID: 05df88f1f1bbe9ebb3a6db3c870c3e99245e0d90
                        IP: 95.25.237.189
                        Port: 10829
                    Node 3 (id: 05e5ff6bf3a86bc38562265e6f5800746ed0f1fd, IPv4/Port: 88.185.213.231:53325)
                        ID: 05e5ff6bf3a86bc38562265e6f5800746ed0f1fd
                        IP: 88.185.213.231
                        Port: 53325
                    Node 4 (id: 05f91be21f6711607a6213a009c0087079ce0178, IPv4/Port: 119.204.119.65:32685)
                        ID: 05f91be21f6711607a6213a009c0087079ce0178
                        IP: 119.204.119.65
                        Port: 32685
                    Node 5 (id: 0554d48797a08aabd814c865955dabbec171e34a, IPv4/Port: 207.96.156.25:39599)
                        ID: 0554d48797a08aabd814c865955dabbec171e34a
                        IP: 207.96.156.25
                        Port: 39599
                    Node 6 (id: 05bd4c29e2fd4c2b15f5ecf5038c49b7689aa939, IPv4/Port: 126.23.227.105:20342)
                        ID: 05bd4c29e2fd4c2b15f5ecf5038c49b7689aa939
                        IP: 126.23.227.105
                        Port: 20342
                    Node 7 (id: 05074bd58ae8931ef5abec3ff643da905085287c, IPv4/Port: 181.45.158.18:6882)
                        ID: 05074bd58ae8931ef5abec3ff643da905085287c
                        IP: 181.45.158.18
                        Port: 6882
                    Node 8 (id: 059ed5a653079994ddc6d9af9678db9b21b079e7, IPv4/Port: 66.181.181.137:19785)
                        ID: 059ed5a653079994ddc6d9af9678db9b21b079e7
                        IP: 66.181.181.137
                        Port: 19785
            Terminator: e
    Transaction ID: 19a7ed0de31316c2
        Key: t
        Value: 19a7ed0de31316c2
    Message type: Response
        Key: y
        Value: r
    Terminator: e


这里面的id你的斗不一样,我用dht网络发送的infor请求,只有一个id和几个节点和端口号,

我在比特彗星做了种子也连接ip成功了,但是把,在进行协议扩展请求的时候,获取种子文件,扩展协议握手不成功,醉了,哎,,,返回和发信信息不一致,发送的信息也检查了,没问题,节点也确实支持扩展协议


这是发送的,和解析出来的,一步一个坑

你图上的信息更像是pex,而不是dht
和我的代码出来的结果都不一样,查看我上方的握手阶段响应输出信息

目前就是请求tracket服务器返回的信息,然后和对等节点进行链接

dht的话,比特彗星建立的我链接不上,使用udp,不知道是不是客户端不支持,,你可以么?

我着服务器的厂商,他说,他们正常,服务器正常,就是不知道客户端有啥哪里不行还是怎么样

用Java的socket就正常,这个是tcp链接

你用的py来做的么?

你这已经跑题了,不是dht的话,毕业设计导师不会给你打分的

额,好吧,我想想,,,,哎,,,都做到这里了,哎,光请求个.torrent文件都够呛

哎,,,头大

大佬,你的超级节点能分享一下吗

大佬,我理解这个玩意为什么开发这么难了,其实dht网络这玩意并不复杂,说白了就是一个服务器,可以监听请求过来请求文件,包括发送.torrent文件,但是有难度的是,很多人下载其实并不是公网ip,所有导致很多节点其实都是没用的,这样子想通过dht网络去寻找.torrent文件就难上加难了呀,所以.还需要一个.torrent文件的服务器,也就是存储文件的地方,也叫做节点,,然后再去握手啥的,这样子基本上很难呀,还有tracket服务器,这种方式也可以获得对等节点,但是需要.torrent文件做基础,这样子矛盾呀。。。

我理解的应该没错把

你的理解完全是错的,只有一点是对的,成为DHT超级节点服务器的前提是拥有公网ip,这也是为什么要使用vps云服务器,可以固定的ip地址24*365天不间断稳定运行
dht和tracker只会存储ip和端口信息
先看下别人发的视频,理解下BT原理吧,或者直接去翻bep文档

https://www.bittorrent.org/beps/bep_0000.html