多播在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

但是,当我运行他们的多播testing实用程序,它使我失败:

 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 

我究竟做错了什么?

netstat -gn的输出是netstat -gn

默认情况下,你的多播连接将会从最低编号的接口咳嗽eth0中走出来。 既然你正试图通过eth2来做到这一点,那么你将需要另一个步骤来build立连接。

testing实用程序是否提供了指定接口的方法? 如果是这样,你需要明确指出“eth2”。 如果这不是一个选项,您可以添加另一个静态路由,以确保您的组播stream量使用该接口。

就像是:

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

试试…

如果一切正常,请确保通过使用静态路由创build/etc/sysconfig/network-scripts/route-eth2文件来使所有内容保持不变。

编辑:

如果你有能力在应用程序中select接口,那么你的接口不需要任何静态路由。 这将由Oracletesting工具来处理IGMP。

先尝试一下…

如果这样做不起作用,请validation在系统连接的networking交换机上是否启用了多播。 他们是什么types的交换机? 我可以根据开关型号/types给出更多的细节说明。 如果思科,例如…

 sh ip igmp snooping sh run | i multicast-routing 

之后,似乎有一个已知的与此产品相关的错误 。 你确定你已经完全修补吗? 它似乎是一个未发布的补丁,所以如果其他所有东西都到位,您可能需要去Oracle解决这个问题。

请参阅: Grid Infrastructure多播问题 – Oracle Bug 9974223