每次通过3G连接都会改变UDP端口

时间:2010-11-05 12:57:07

标签: java udp 3g

我使用基于java的UDP套接字与3G模块通信;但是每次接收数据包的端口(有时是IP地址)都会发生变化,这是非常令人惊讶的。这表示我无法为3G模块分配固定的IP /端口并与之通信,但仅依靠传入的数据包来获取目的地信息。谁能告诉我为什么?通过3G和普通互联网进行TCP / UDP连接有什么区别?提前感谢!

1 个答案:

答案 0 :(得分:9)

移动运营商通常会安装NAT防火墙。尝试通过发送应用程序可能忽略的UDP数据包来保持UDP“会话”活跃。可能需要每30秒发送一次以保持NAT映射处于活动状态。

如果移动运营商的NAT防火墙没有从UDP源ip /端口目标IP /端口四重接收数据包,它将删除它并在应用程序的下一个数据包到达时分配新的IP /端口。