尝试实现一个非常简单的Java教程示例"编写数据报客户端和服务器" (http://docs.oracle.com/javase/tutorial/networking/datagrams/clientServer.html)。它在本地网络上运行良好。但是,当服务器位于远程地址时,客户端的UDP消息永远不会到达服务器。
我使用端口32进行通信。客户端和服务器计算机上都禁用了防火墙和防病毒软件。服务器本地网络上的路由器设置为将UDP端口32数据包转发到服务器主机本地地址。对客户端路由器也是如此。服务器计算机上的netstat -an
命令显示
UDP 0.0.0.0:32 *:*
UDP [::]:32 *:*
客户端计算机上的Wireshark显示客户端消息正在发送到远程服务器计算机的正确IP地址(通过"什么是我的IP"在服务器上获得)。但是,远程服务器上的Wireshark在UDP端口32上没有显示任何消息。
什么阻止这种沟通?