Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python和bittorrent协议_Python_Bittorrent - Fatal编程技术网

使用python和bittorrent协议

使用python和bittorrent协议,python,bittorrent,Python,Bittorrent,我想写一个程序,可以通过NAT路由器发送和接收数据,而无需先设置端口转发。我需要使用bittorrent协议还是有更好的协议?bittorrent不是NAT遍历技术,而是P2P文件共享协议。除非您想传输文件,否则BitTorrent可能不会有多大帮助 某些路由器允许您使用UPnP设置端口映射。(请参阅查找Python UPnP客户端库) 另一种方法是在您的机器上设置Teredo tunneling。这将有望解决NAT遍历问题,并在IPv4 NAT路由器后面提供一个真正的未重新调用的IPv6地址。

我想写一个程序,可以通过NAT路由器发送和接收数据,而无需先设置端口转发。我需要使用bittorrent协议还是有更好的协议?

bittorrent不是NAT遍历技术,而是P2P文件共享协议。除非您想传输文件,否则BitTorrent可能不会有多大帮助

某些路由器允许您使用UPnP设置端口映射。(请参阅查找Python UPnP客户端库)


另一种方法是在您的机器上设置Teredo tunneling。这将有望解决NAT遍历问题,并在IPv4 NAT路由器后面提供一个真正的未重新调用的IPv6地址。

如果只有一方在NAT后面,则可以使用普通TCP,这一方必须启动连接。如果双方都支持NAT,则需要一个不支持NAT的中继。