我在java中创建了一个UDP客户端服务器程序。它在localhost和相同的路由器/网络中运行良好。 但是当我在连接到互联网的笔记本电脑上运行我的UDP服务器程序并在我的实验室(在不同的网络上)运行我的UDP客户端程序时,它就无法工作了。 有没有办法通过网络将UDP数据报从一个系统发送到另一个系统?
答案 0 :(得分:0)
是的,理论上它应该是一样的。它仍然是IP。
实际上,存在具有NAT的路由器。例如,如果您将UDP数据包发送到家用PC的公共IP地址,则实际上会在您的路由器上进行寻址。路由器不知道应该将数据包发送到哪个本地IP并丢弃该数据包。
解决方案:为两端的路由器配置UDP端口转发。