On (06/12/08 08:10), James Carlson wrote: > Correct. On a BSD or Linux system, you can issue SIOCADDMULTI to add > an arbitrary Ethernet multicast address to the accepted set on the > underlying driver. It does so *WITHOUT* interaction with the IP > multicast infrastructure on those systems.
I've not looked up when this changed, but seems like at least the most recent freebsd snapshot uses this to add if_multiaddrs entries to the ifnet. Looking at the revs, seems like rev 1.43 of if.h has the relevant explanation: "Use the new if_multiaddrs list for multicast addresses rather than the previous hackery involving struct in_ifaddr and arpcom. Get rid of the abominable multi_kludge. Update all network interfaces to use the new machanism. Distressingly few Ethernet drivers program the multicast filter properly (assuming the hardware has one, which it usually does)." (I'm looking at http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/net/if.h) --Sowmini _______________________________________________ networking-discuss mailing list [email protected]
