From owner-freebsd-current@FreeBSD.ORG Wed Dec 24 14:28:33 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EE4BD1065673 for ; Wed, 24 Dec 2008 14:28:33 +0000 (UTC) (envelope-from bms@incunabulum.net) Received: from out1.smtp.messagingengine.com (out1.smtp.messagingengine.com [66.111.4.25]) by mx1.freebsd.org (Postfix) with ESMTP id C1BE38FC23 for ; Wed, 24 Dec 2008 14:28:33 +0000 (UTC) (envelope-from bms@incunabulum.net) Received: from compute1.internal (compute1.internal [10.202.2.41]) by out1.messagingengine.com (Postfix) with ESMTP id DD9591F1666; Wed, 24 Dec 2008 09:03:33 -0500 (EST) Received: from heartbeat1.messagingengine.com ([10.202.2.160]) by compute1.internal (MEProxy); Wed, 24 Dec 2008 09:03:33 -0500 X-Sasl-enc: mkUHPkOqXG0YI+eq0vXJuMNs1Jr4yFCM/aIv8EoTXUrZ 1230127413 Received: from anglepoise.lon.incunabulum.net (82-35-112-254.cable.ubr07.dals.blueyonder.co.uk [82.35.112.254]) by mail.messagingengine.com (Postfix) with ESMTPSA id C6BB715EED; Wed, 24 Dec 2008 09:03:32 -0500 (EST) Message-ID: <49524131.7010700@incunabulum.net> Date: Wed, 24 Dec 2008 14:03:29 +0000 From: Bruce Simpson User-Agent: Thunderbird 2.0.0.18 (X11/20081204) MIME-Version: 1.0 To: Ian FREISLICH References: <494FAFAC.90802@FreeBSD.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Gerald Pfeifer , Vladimir Grebenschikov , Kip Macy , Qing Li , freebsd-net@freebsd.org, freebsd-current@freebsd.org, Sergey Matveychuk Subject: Re: HEADSUP: arp-v2 has been committed X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Dec 2008 14:28:34 -0000 Ian FREISLICH wrote: > ... > I can't quite remember exactly why imr_ifindex doesn't work, but > on my hosts which have several hundred interfaces and my OSPF > sessions are never on the interface that has the default route, > until I explicitly set the imr_address, the kernel always chooses > the interface which has the default route. > Do you have applications which do not explicitly specify the interface address to use for multicast group joins? If they do not, that's a bug in the application -- IPv4 and IPv6 multicast *requires* that a link be specified somehow, either using the new APIs which take an ifindex, or an IPv4 "primary address". Unfortunately there has been historical breakage in the multicast APIs. There are some apps which run before all interfaces have been ifconfig'd up in the system, and they need to create multicast sockets. The kernel behaviour you describe is historical and I had to reintroduce it to avoid breaking such applications. It is a kludge which we probably can't retire until their developers fix their multicast apps to be aware of multiple interfaces on the system. This ground is well covered in the literature and the RFCs. thanks, BMS