【发布时间】:2010-10-23 03:13:02
【问题描述】:
我想编写一个程序,它可以通过 NAT 路由器发送和接收数据,而无需先设置端口转发。我需要使用 bittorrent 协议还是有更好的方法?
【问题讨论】:
-
如果只有一侧在 NAT 之后,您可以使用纯 TCP,这一侧必须启动连接。如果双方都在 NAT 之后,您将需要一个不在 NAT 之后的中继。
标签: python bittorrent
我想编写一个程序,它可以通过 NAT 路由器发送和接收数据,而无需先设置端口转发。我需要使用 bittorrent 协议还是有更好的方法?
【问题讨论】:
标签: python bittorrent
BitTorrent 不是一种 NAT 穿越技术,而是一种 P2P 文件共享协议。除非您想传输文件,否则 BitTorrent 可能不会有太大帮助。
某些路由器允许您使用 UPnP 设置端口映射。 (请参阅this other question 以查找 Python UPnP 客户端库)
另一种方法是在您的机器上设置 Teredo 隧道。这有望处理 NAT 遍历,并在您的 IPv4 NAT 路由器后面为您提供一个真正的无防火墙 IPv6 地址。
【讨论】: