Multicast routing on Mac OS X is a bit different from Linux. For some reason a node bound to 127.0.0.1 (lo0) cannot use a multicast route via en0. Usually people run the testsuite on 127.0.0.1 and use a real IP address (e.g. 192.168.1.3) o run apps that needs to talk to other hosts.
To accomplish this, 2 multicast routes have to be added:
# Adds a multicast route for 224.0.0.1-231.255.255.254
sudo route add -net 224.0.0.0/5 127.0.0.1
# Adds a multicast route for 232.0.0.1-239.255.255.254
sudo route add -net 232.0.0.0/5 192.168.1.3
When binding to 192.168.1.3, a multicast address (mcast_addr) from then second range has to be used and when binding to 127.0.0.1, an address from the first range should be used.
See [1] for details.
[1] [JGRP-1808] Mac OS: no multicast route for 127.0.0.1 - JBoss Issue Tracker
Comments