From owner-freebsd-net Fri Jul 13 10: 3:50 2001 Delivered-To: freebsd-net@freebsd.org Received: from newsguy.com (smtp.newsguy.com [209.155.56.71]) by hub.freebsd.org (Postfix) with ESMTP id 5F23237B406 for ; Fri, 13 Jul 2001 10:03:46 -0700 (PDT) (envelope-from dcs@newsguy.com) Received: from newsguy.com (ppp045-bsace7001.telebrasilia.net.br [200.181.80.45]) by newsguy.com (8.9.1a/8.9.1) with ESMTP id KAA49035; Fri, 13 Jul 2001 10:03:36 -0700 (PDT) Message-ID: <3B4F2A53.1A4353EE@newsguy.com> Date: Fri, 13 Jul 2001 14:05:23 -0300 From: "Daniel C. Sobral" X-Mailer: Mozilla 4.77 [en] (Win98; U) X-Accept-Language: en,pt-BR,pt,en-GB,en-US,ja MIME-Version: 1.0 To: mark tinguely Cc: net@FreeBSD.ORG Subject: Re: Multicasting and routes References: <200107121424.f6CEO1040030@web.cs.ndsu.NoDak.edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org mark tinguely wrote: > > > It seems there is a problem in our IP stack with regards to > > multicasting. The symptoms is the inability to send multicast packets on > > correctly configured sockets in the absence of a default (or, > > erroneously, multicast address being used) route. > > I don't know if I am reading your question correctly, but have you > tried adding a multicast route? In /etc/rc.conf: > > static_routes="multicast loopback" > route_multicast="224.0.0.0 -netmask 0xf0000000 -interface ${hostname}" > > this allows only one interface to send the multicast packets, and requires > a multicast router to place the packets on the other interfaces. A multicast application specifies what interface it wants to send the multicast packet through. The "one interface" limit mentioned on rfc1112 refers to the behavior when no interface is specified: a default is choosen and used. The route above is essentially incorrect. Fortunately, our IP stack behaves correctly when a default route (or a route to the multicast address) exists: it ignores it. Unfortunately, it only does so after checking if it knows a route to that address and returning host unreachable otherwise. I have a patch at http://people.freebsd.org/~dcs/ip_output.patch which I intend to commit unless someone objects. What it does is skip the route checking code if a interface was specified for the multicast packet. -- Daniel C. Sobral (8-DCS) dcs@newsguy.com dcs@freebsd.org capo@the.secret.bsdconspiracy.net wow regex humor... I'm a geek To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message