我试图在两台机器上安装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