gpt4 book ai didi

linux - 可以发送但不能接收组播数据包

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:02:46 26 4
gpt4 key购买 nike

我正在尝试使用多播将多个 UDP 数据报发送到嵌入式 linux 单元。设备上的内核版本是:

/ # uname -r
2.6.24.6

出于测试目的,我使用找到的代码 here (添加了几个标题并更改了 ip 地址以匹配单元的 ip 地址)

问题是同一多播组中的其他设备(windows PC)能够接收数据,而 native 却不能。我在某处读到必须修改 rp_filter 的值。我尝试了所有选项,但无济于事。

我可以毫无问题地将设备作为服务器运行。但它根本收不到。

请注意,netstat -g 不起作用。

/ # netstat -g
netstat: invalid option -- g
BusyBox v1.11.2 () multi-call binary

Usage: netstat [-laentuwxr]

Display networking information

Options:
-l Display listening server sockets
-a Display all sockets (default: connected)
-e Display other/more information
-n Don't resolve names
-t Tcp sockets
-u Udp sockets
-w Raw sockets
-x Unix sockets
-r Display routing table

因此我无法检查群组成员。

P.S:我在一台 Linux PC 上运行了相同的程序(代码来自上面的链接)并且运行正常。所以代码不是问题。

最佳答案

解决了。在弄乱了我在系统上能找到的所有东西之后,我通过在混杂模式下运行 eth0 让它工作

ifconfig eth0 promisc

关于linux - 可以发送但不能接收组播数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18055190/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com