多播似乎无法在 RHEL 5.5 上运行

多播似乎无法在 RHEL 5.5 上运行

我正在尝试在两台机器上安装 Oracle Grid Infrastructure。他们的文件状态:

您必须在 IP 地址子网范围 224.0.0.0/24 和 230.0.1.0/24 上为集群启用多播

于是我跑了:

route add -net 224.0.0.0/24 dev eth2
route add -net 230.0.1.0/24 dev eth2

route -n生成:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
230.0.1.0       0.0.0.0         255.255.255.0   U     0      0        0 eth2
224.0.0.0       0.0.0.0         255.255.255.0   U     0      0        0 eth2
# and others

ifconfig eth2其中包括,表演UP BROADCAST RUNNING MULTICAST

然而,当我运行他们的多播测试实用程序时,它失败了:

Test for Multicast address 230.0.1.0
Sep  3 19:40:39 | Multicast Failed for eth2 using address 230.0.1.0:42000

Test for Multicast address 224.0.0.251
Sep  3 19:41:10 | Multicast Failed for eth2 using address 224.0.0.251:42001

我究竟做错了什么?

答案1

的输出是什么netstat -gn

默认情况下,您的多播加入将从编号最小的接口发出咳嗽,eth0。由于您尝试通过 eth2 执行此操作,因此您需要另一个步骤来建立连接。

测试实用程序是否提供了指定接口的方法?如果是,则需要明确说明“eth2”。如果这不是一个选项,则可以添加另一个静态路由以确保多播流量使用该接口。

就像是:

route add -net 224.0.0.0 netmask 240.0.0.0 dev eth2(通过 eth2 路由所有多播)

试试看...

如果一切正常,请确保通过创建/etc/sysconfig/network-scripts/route-eth2包含静态路由的文件使所有内容持久化。

编辑:

如果你有能力在应用程序中选择接口,那么你不要接口上不需要任何静态路由。这将由 Oracle 测试实用程序来处理 IGMP。

先尝试一下...

如果这不起作用,请验证系统所连接的网络交换机上是否启用了多播。它们是什么类型的交换机?我可以根据交换机型号/类型提供更详细的说明。例如,如果是思科...

sh ip igmp snooping
sh run | i multicast-routing

随后,似乎与该产品相关的已知错误。您确定已经完全修补了吗?这似乎是一个未发布的补丁,因此如果其他一切都已就绪,您可能需要去 Oracle 解决此问题。

看:网格基础设施多播问题 - Oracle Bug 9974223

相关内容