【发布时间】:2010-12-03 17:51:02
【问题描述】:
我遇到了一个奇怪的问题。我有一个客户端向我的服务器发送数据包,但我的服务器 UDP 套接字从不接收它们。如果我发送而他尝试接收,反过来也会发生同样的事情。
检查此图像,从 wireshark 捕获: http://img263.imageshack.us/img263/2636/bokus.png
我已将我的 UDP 套接字绑定到 EndPoint 192.168.2.3(服务器的内部 IP)和端口 9998。 客户端将数据发送到我的 IP,然后应将其转发到本地服务器计算机.. 如您所见,wireshark 清楚地检测到目标端口为 9998 的 192.168.2.3 的传入数据包,但没有发送任何内容!
(...为什么它在目的端口说 distinct32 btw?)
【问题讨论】:
-
您的问题不知道可能出了什么问题。您的代码中可能存在错误。
-
我不知道可能出了什么问题; UDP 套接字绑定到正确的 EndPoint 并从正确的 EndPoint 接收。 receiveFrom 回调永远不会被触发,我知道为什么会这样。除了错误的端点(我知道是正确的)之外,还有什么会影响这一点?
-
最后一个问题:因为那是通常使用此端口的(非官方)服务:ports.my-addr.com/…
-
您是否检查过防火墙是否在数据到达您的应用程序之前将其丢弃?
-
UDP/TCP 端口 9998 由“distinct32”服务或应用程序使用。我找不到任何关于它实际上是什么的信息。这就像 Wireshark 用“smtp”替换 TCP 端口 25。