【发布时间】:2011-07-01 22:53:00
【问题描述】:
我遇到了一个有趣的问题。基本上我有 2 部手机都在 NAT 之后。我想使用 UDP 在两台设备之间直接通信。
我知道如果我启动从手机到服务器的连接,那么我可以将数据从该连接向下推送到手机(即从接收消息的同一端口将其发送回与它相同的 ip 和端口从......收到)。因此,我可以通过将两部手机连接到服务器来轻松地在两部设备之间进行通信。然后将数据发送到服务器并将其重新路由回手机。这绕过了我可能遇到的任何 NAT 穿越问题。
但是,我宁愿只使用服务器将 2 个设备相互指向,然后让它们直接通信。我该怎么做呢?不使用像 uPnP 这样的东西可以吗?
任何帮助将不胜感激!
编辑:我找到了这个文档http://www.brynosaurus.com/pub/net/p2pnat/ 看起来我正在追求发夹式翻译,但它看起来并没有得到广泛的支持。我想知道移动 ISP 对 UPnP 的支持有多好?
【问题讨论】:
-
您的问题是“我想知道移动 ISP 对 UPnP 的支持有多好?”。所有问题都解释了什么打孔是,但没有一个回答有关当前支持的问题。哦,真有趣 :-) 感谢您提供指向 p2pnat 论文的链接。
-
近年来您找到解决方案了吗?我还有三个远程网络(都带有 LTE 调制解调器,没有 uPNP 的 ISP NAT),我想将它们连接在一起。现在我正在使用 Pritunl OpenVPN,但我希望中介服务器只是作为中介,正如你所描述的,而不是通过它路由所有流量。
-
找到了 ZeroTier,它看起来就像工作的工具(无法编辑评论,因为 > 5 分钟)。
标签: mobile udp p2p nat nat-traversal