According to http://www.tldp.org/HOWTO/Multicast-HOWTO-6.html: "If the host has more than one interface and the IP_MULTICAST_IF option is not set, multicast transmissions are sent from the default interface, although the remaining interfaces might be used for multicast forwarding if the host is acting as a multicast router.". Thus make sure self.intf can send and receive multicast as it might not be the system's default interface. At least on OS X 10.9.5 this isn't as straightforward as it sounds, thus make sure it does no harm.