使用ip route add将组播路由添加到多个设备

时间:2016-11-03 00:18:16

标签: linux routing multicast iproute

TLDR:有没有办法使用" ip route"为多个网卡添加组播路由?

我们有软件将绑定到不同IP地址的两个套接字连接到两个单独的组播组,例如套接字1绑定到192.168.0.2并加入组播组233.255.10.1,而套接字2绑定到10.57.31.2并加入了组播组239.255.100.1。

我们目前正在使用bash脚本(Linux内核3.14.39)使用路由在两个网络接口上设置组播路由,例如

route add -net 224.0.0.0 netmask 240.0.0.0 eth0
route add -net 224.0.0.0 netmask 240.0.0.0 eth1

并通过路线-n

进行验证
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
224.0.0.0       0.0.0.0         240.0.0.0       U     0      0        0 eth0
224.0.0.0       0.0.0.0         240.0.0.0       U     0      0        0 eth1

我最近读过这条路线已被弃用/过时,我们应该使用ip route,例如

ip route add 224.0.0.0/4 dev eth0
ip route add 224.0.0.0/4 dev eth1

不幸的是,第二次调用失败了" RTNETLINK答案:文件存在"当然,这些电话后第二条路线也没有出现。

有没有办法使用ip route将组播路由添加到多个网卡?

我可以使用/ 8作为网络掩码吗?例如

ip route add 233.0.0.0/8 dev eth0

ip route add 239.0.0.0/8 dev eth1

但这是有问题的,因为执行此操作的脚本不知道哪个多播地址与哪个设备相关联,并且根据系统配置,它并不总是保证相同。使用我的第一个路由添加示例使这成为一个非问题。

0 个答案:

没有答案