【发布时间】:2014-03-24 12:53:36
【问题描述】:
我看到 UDP 数据包到达我的 Linux 机器(通过 tcpdump),目标端口设置为 25555。但是:
nc -l -u 25555
显示没有流量。
我已经检查过了:
- iptables 已关闭
- 目标 MAC 地址与传入接口匹配
- 目标 IP 地址与传入接口匹配
- IP 校验和正常
- UDP 校验和正常
另外,所有数据包都被丢弃了,因此这不是 rx 缓冲区过低的问题。
还有什么可能导致数据包被丢弃的想法吗?
【问题讨论】:
-
目标 IP 地址是什么?
-
您确定没有其他程序正在从该端口读取数据吗?执行
cat /proc/net/udp并向我们展示它打印的内容(当 nc 未运行时)。 -
我希望 nc 在这种情况下会失败(EADDRINUSE),不是吗?
-
它没有。有趣的。尽管如此,没有其他应用程序正在侦听该端口。 netstat -antelupa | grep 25555 没有结果。
-
我不确定。如果您向我们展示您的
udp表,我们可以看到更多详细信息。如果您不想发布它,至少尝试使用 grep 来获取端口号的十六进制表示。