Date: Sun, 11 Apr 1999 23:49:26 -0700 From: Pavlin Ivanov Radoslavov <pavlin@catarina.usc.edu> To: bmah@CA.Sandia.GOV Cc: Dag-Erling Smorgrav <des@flood.ping.uio.no>, Pavlin Ivanov Radoslavov <pavlin@catarina.usc.edu>, freebsd-hackers@FreeBSD.ORG Subject: Re: IGMP membership report not received by mrouted Message-ID: <199904120649.XAA10028@rumi.usc.edu> In-Reply-To: Your message of "Fri, 09 Apr 1999 06:59:34 PDT." <199904091359.GAA08806@stennis.ca.sandia.gov>
next in thread | previous in thread | raw e-mail | index | archive | help
> --==_Exmh_98576044P > Content-Type: text/plain; charset=us-ascii > > If memory serves me right, Dag-Erling Smorgrav wrote: > > Pavlin Ivanov Radoslavov <pavlin@catarina.usc.edu> writes: > > > If I start mrouted (3.9-beta3+IOS12), mrouted cannot see the IGMP > > > membership reports. If I start tcpdump on the interface with > > > receivers, then mrouted can see the IGMP membership reports!! > > > No other mrouted running on neighbor machines. > > > > Starting tcpdump puts the interface in promiscuous mode. It sounds to > > me like a) the NIC driver is incorrectly discarding multicast packets > > when not in promiscuous mode, or b) mrouted uses bpf but forgets to Thanks for all suggestions/explanations. A mcast routing daemon like mrouted puts an interface in a mode similar to promiscuous: there is a flag IFF_ALLMULTI that enables receiving all multicast groups. After looking in the source code, it seems like the problem is in the de driver. Below is a simple patch to pci/if_de.c that fixed it. I will send an email to the author of the device driver. Regards, Pavlin --- if_de.c.orig Tue Dec 29 16:37:43 1998 +++ if_de.c Sun Apr 11 23:32:40 1999 @@ -3378,9 +3378,11 @@ } else { sc->tulip_flags &= ~TULIP_PROMISC; sc->tulip_cmdmode &= ~TULIP_CMD_PROMISCUOUS; - if (sc->tulip_flags & TULIP_ALLMULTI) { + if (sc->tulip_if.if_flags & IFF_ALLMULTI) { + sc->tulip_flags |= TULIP_ALLMULTI; sc->tulip_cmdmode |= TULIP_CMD_ALLMULTI; } else { + sc->tulip_flags &= ~TULIP_ALLMULTI; sc->tulip_cmdmode &= ~TULIP_CMD_ALLMULTI; } } To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199904120649.XAA10028>