Wireshark 看到 udp 数据包,但我的应用程序看不到

发布于 2024-11-02 23:18:43 字数 419 浏览 3 评论 0原文

我正在使用这个 python 示例 来测试使用广播 udp 数据包的连接。由于一些奇怪的原因,我可以看到数据包通过wireshark进入我的RHEL服务器(不是在混杂模式下),尽管python recv没有得到它们。将同一台计算机上的数据包发送到“localhost”确实有效。另外,使用另一对计算机,我的代码确实可以工作。所以我的这台 RHEL 计算机有问题。

我尝试绑定 127.0.0.1、0.0.0.0、255.255.255.255,但没有成功。我关闭了 SELinux、RHEL 防火墙、iptables 和 ip6tables。我检查了 netstat,发现我的 python 脚本是唯一监听该 udp 端口​​的脚本。以托尔之名,出了什么问题?

I'm using this python example to test a connection using broadcast udp packets. For some strange reason I can see the packets coming in on my RHEL server through wireshark (not in promiscuous mode), though the python recv doesn't get them. Sending the packets on the same computer to 'localhost' does work. Also, using a different pair of computers, my code does work. So I have this specific RHEL computer that's problematic.

I've tried binding on 127.0.0.1, 0.0.0.0, 255.255.255.255 to no avail. I turned off SELinux, the RHEL firewall, iptables and ip6tables. I checked netstat and see my python script is the only one listening on that udp port. In thor's name what's wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦幻的心爱 2024-11-09 23:18:43

知道了!这是解决问题的命令:

ifconfig eth2 -broadcast 30.255.255.255

原始广播地址是 30.0.0.255,而我正在广播到 30.255.255.255,因此虽然wireshark 将此视为相关的广播(不混杂),但操作系统却没有。

Got it! This is the command that fixed the problem:

ifconfig eth2 -broadcast 30.255.255.255

The original Bcast address was 30.0.0.255 and I was broadcasting to 30.255.255.255, so while wireshark saw this as a relevant Bcast (not promiscuous), the OS did not.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文