在iPhone上,我正在运行一个使用AsyncUdpSocket库来处理UDP网络的应用程序。我已经进行了测试。我可以从我的iPhone发送UDP数据包到运行Java程序并正确接收UDP的服务器。
然而,当情况反过来时,Java程序的UDP消息无法传递到iPhone。因此,我决定测试库是否能够使用iPhone上的127.0.0.1发送/接收自己的UDP数据包,结果是可以的。
所以我想知道UDP数据包是否被发送了,于是我使用Wireshark查看我的网络活动。
上面图片的直链:http://img46.imageshack.us/img46/7939/screenshot20100220at110.png
在iPhone程序中,我指示我的UDP程序连接到192.168.99.11,这是我的MacBook,使用端口55555。我的Macbook上的Java UDP程序被告知要连接到远程IP 192.168.99.13(我的iPhone)的端口55555。
在Wireshark上,我可以看到ICMP告诉我从iPhone无法到达目标和端口。
那么有人知道为什么iPhone会阻止UDP数据包吗?还是我忽略了什么?