Re: [Madwifi-devel] multicast filter bug?
Status: Beta
Brought to you by:
otaku
From: Sam L. <sa...@er...> - 2003-09-01 17:42:34
|
>> My Linux box is IPv6 enbabled kernel, >> But it can't assign IPv6 address because of >> DAD(Duplicate Address Detection) failure. >> >> DAD uses multicast. >> I think it caused by receiving mcast packet which sent by itself. >> >> Does anyone use IPv6 on ath? device? > > ath0: duplicate address detected! > ath0: duplicate address detected! > ath0: duplicate address detected! Look for this code in wlan/if_ieee80211subr.c: #ifdef IFF_SIMPLEX if ((ifp->if_flags & IFF_SIMPLEX) && IEEE80211_IS_MULTICAST(wh->i_addr1) && IEEE80211_ADDR_EQ(wh->i_addr3, dev->dev_addr)) { /* * In IEEE802.11 network, multicast packet * sent from me is broadcasted from AP. * It should be silently discarded for * SIMPLEX interface. */ DPRINTF(ic, ("%s: discard multicast echo\n", dev->name)); goto out; } #endif In BSD systems IFF_SIMPLEX is a flag each network interface sets to indicate the interface cannot hear it's own transmissions: #define IFF_SIMPLEX 0x800 /* can't hear own transmissions */ When I ported the wlan code I could find no equivalent for Linux so I left the issue unresolved. It's likely the cause of your problems. You can probably just enable the code but it would be better to do "the right thing" when committing a fix. Sam |