使用 Linux 路由器进行手动多播转发

使用 Linux 路由器进行手动多播转发

我有一台 Linux 路由器(Ubuntu)。它在单播模式下运行良好,但在多播路由/转发模式下却遇到了一些麻烦。

问题是我的主机不发送 igmp/mld 消息,因此路由器无法获知链路上是否有感兴趣的一方。

我如何手动配置转发。以便将进入 eth0 的多播转发出 eth1。

我尝试使用以下命令使其工作:route add -net 224.0.0.0 netmask 240.0.0.0 eth0

但这似乎仅用于传出流量。

我也尝试了 smcroute,但是这个守护进程在我的 Ubuntu 上不起作用。

可以使用 iptables 进行转发吗?或者使用此 route add 命令?

谢谢!!

答案1

虽然有点晚了,但这是一个非常可靠的指南http://troglobit.github.io/multicast-howto.html。最后他提到:

iptables -t mangle -A OUTPUT -d <group> -j TTL --ttl-set <num>

但我的理解是,您希望网络交换机能够处理路由器随后将使用的 igmp 查询/转发。

相关内容