UDP NAT遍历

时间:2010-12-09 11:45:52

标签: c++ sockets udp nat

我有一台PC和一部手机,我正在尝试在2和3G之间建立双向通信。

在PC端,我可以完全控制NAT。所以我将端口上的传入通信映射到我桌面上的PC上。

然后我使用我的特定端口发送到我们的PC网络的外部IP地址。

我看到数据包到达我的电脑,这是完美的。所以现在我想将PC上的通信发送回手机。我通过“recvfrom”获得了地址和端口,然后我将发送回到我收到数据的地址和端口。

然而,手机没有收到这些数据。我假设传入通信没有被移动提供商网络上的NAT盒重定向。

这是为什么?我想当我通过电话发起通信时,我应该可以沿着那条路回去与手机通信了吗?

那么,我该如何运作呢?

任何想法都赞赏!

1 个答案:

答案 0 :(得分:0)

我确实弄明白我做错了什么。我正在通过电话与PC的端口“x”通信,然后尝试在端口“y”上返回另一个方向。在两种方式下使用相同的端口允许进行通信:)