我在 ubuntu 机器上打开一个 udp 阻塞套接字,它成功了(没有返回错误)。
当从另一台机器向该机器和端口发送数据时,接收不会破坏,并且在 wireshark 嗅探器中我看到 Icmp 错误“端口无法访问”。
我认为这可能是 iptables 问题并打开了 accept 端口。
还有其他关于调试的建议吗?
谢谢。
提米
最佳答案
我通常使用netcat
来确定问题是来自网络/防火墙还是来 self 自己的代码
尝试使用 netcat
运行测试服务器:
例如。
nc -l -u -p 9999
将打开并监听一个 udp 套接字,端口 9999。
现在您可以尝试使用
从同一台计算机或另一台计算机发送数据包nc -u <ipaddress> 9999
然后输入一些内容,看看它是否到达第一台计算机。
netcat 中还有很多其他很酷的东西,请查看手册。
关于Linux 阻塞 udp 套接字收不到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3174144/