I'm trying to make a multicast application that sends and receives multicast packets on interface eth0. Interface eth1 must not send out the multicast packets. If I send the multicast packets then by default they are delivered to every interface that is multicast-capable. The interfaces decide themselves whether they are capable (at least it seems so). The kernel finds that my eth1 is capable because(?) it's ethernet and ther is some igmp traffic on the attached network. So I first blocked the outgoing traffic with ipchains. This works but is not good enough since the application gets back an error saying operation not permitted (because one interface failed, I think). I don't want to ignore the error because it may also report real problems. Another try was to explicitly join the multicast group on the internal interface. This didn't help. Is there any method of specifying that certain interface must not talk multicast at all? There is IFF_MULTICAST flag but this is not what I want (and it does not work). IFF_MULTICAST is a driver-level flag and does not seem to control the sending of the multicast packets but receiving. ifconfig eth1 -multicast doesn't help. Should I add a new ip level ioctl that enables and disables multicast on a device? It should do ip_mc_up or ip_mc_down on the specified interface. This would be device-independent which is good IMHO. Is this feasible, or is it the wrong place to dig? Any other suggestions? 2.2.1 was the kernel I tried, with IP multicast support compiled in and no ip multicast router support. --- Meelis Roos ([EMAIL PROTECTED]) - To unsubscribe from this list: send the line "unsubscribe linux-net" in the body of a message to [EMAIL PROTECTED]
