组播只能在混杂模式下工作

我试图在Arch Linux上通过UDP多播传输接收MPEG-TS。

所以当我运行ffprobe -i udp://@224.1.1.240:6000它永远挂起而没有结果。 然后我运行tcpdump ,它没有显示来自地址的组播stream量。

但是如果在ffprobe运行tcpdump -i eth0 -n net 224.0.0.0/4 ,它就可以工作! tcpdump显示数据包并且ffprobe正确地检测到数据stream。

可能会注意到,当NIC处于混杂模式时,问题可能会消失。

有人可以帮忙吗? 我的configuration有什么问题?

  • iptables所有东西都被接受。
  • cat /proc/sys/net/ipv4/conf/*/rp_filter 0 0 0 0 0 0 0
  • ip r default dev ppp0 scope link 83.221.214.192 dev ppp0 proto kernel scope link src 10.7.248.143 192.168.168.192/28 dev enp3s0 proto kernel scope link src 192.168.168.193 224.0.0.0/4 dev enp3s0 scope link

networking通过D-LINK DGS-1005A连接到ISP。

PS一切工作在完美的Windows 7在同一台PC上。