From owner-freebsd-net@FreeBSD.ORG Sun Jun 24 13:12:45 2007 Return-Path: X-Original-To: freebsd-net@freebsd.org Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CFAC816A41F for ; Sun, 24 Jun 2007 13:12:45 +0000 (UTC) (envelope-from bms@FreeBSD.org) Received: from out4.smtp.messagingengine.com (out4.smtp.messagingengine.com [66.111.4.28]) by mx1.freebsd.org (Postfix) with ESMTP id A5C9313C455 for ; Sun, 24 Jun 2007 13:12:45 +0000 (UTC) (envelope-from bms@FreeBSD.org) Received: from compute1.internal (compute1.internal [10.202.2.41]) by out1.messagingengine.com (Postfix) with ESMTP id 1F7C31843; Sun, 24 Jun 2007 09:12:45 -0400 (EDT) Received: from heartbeat1.messagingengine.com ([10.202.2.160]) by compute1.internal (MEProxy); Sun, 24 Jun 2007 09:12:45 -0400 X-Sasl-enc: 0x2XajVnAqirwc/3JGbCWKcrsTpMRuujb0DhjIbTjk0U 1182690764 Received: from [192.168.123.18] (82-35-112-254.cable.ubr07.dals.blueyonder.co.uk [82.35.112.254]) by mail.messagingengine.com (Postfix) with ESMTP id 7612427B9; Sun, 24 Jun 2007 09:12:44 -0400 (EDT) Message-ID: <467E6DC9.5080402@FreeBSD.org> Date: Sun, 24 Jun 2007 14:12:41 +0100 From: "Bruce M. Simpson" User-Agent: Thunderbird 1.5.0.10 (X11/20070407) MIME-Version: 1.0 To: George Michaelson References: <20070620094806.3a95ec40@garlique.algebras.org> <20070622011451.GA3170@rogue.navcom.lan> <467C5DC2.1060109@FreeBSD.org> <20070623141309.76f4e3be@garlique.algebras.org> In-Reply-To: <20070623141309.76f4e3be@garlique.algebras.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-net@freebsd.org, ghozzy Subject: Re: how do you bring IPv6 live without reboot? X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Jun 2007 13:12:45 -0000 George Michaelson wrote: > its interesting that when I sent-pr'd this, I got tut-tutted back to > freebsd questions. In my books, not being able to do this kind of V6 > maintenance work on the interface without taking it down probably > deserves to be kept as an open bug! > I agree. Please mail me the PR number and I'll reopen it. However, I can't make any commitment about when I personally would get time to do this as I need to go off and work for a living. It does however strike me as a sound design choice to make. The network stack design in Windows mandates that this is how it has to be -- TDI bindings must be explicitly made between the stack and the NDIS driver(s). Loopback is handled at TDI layer and does not appear until the PF_INET6 domain is attached to the system. Linux has gone part of the way down this road. I beleive BSD should do so as well, for a plethora of reasons including this one, as well as disentangling protocol domain stuff from struct ifnet. As a result ifconfig would get shaken up a bit. At the moment, the way the BSD stack works, neither IPv4 nor IPv6 are attached to struct ifnet until an address is explicitly configured, either by the user or by the kernel configuring a link-local address, so if you do need to purge protocol domain wide state, your current options are to remove the interface (which has been shown to cause problems, some of which I have been trying to fix) or reboot. regards, BMS