From owner-freebsd-stable@FreeBSD.ORG Wed Dec 26 10:35:24 2012 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id EA86E11F; Wed, 26 Dec 2012 10:35:24 +0000 (UTC) (envelope-from kpaasial@gmail.com) Received: from mail-wg0-f45.google.com (mail-wg0-f45.google.com [74.125.82.45]) by mx1.freebsd.org (Postfix) with ESMTP id 3FD578FC08; Wed, 26 Dec 2012 10:35:23 +0000 (UTC) Received: by mail-wg0-f45.google.com with SMTP id dq12so3908162wgb.12 for ; Wed, 26 Dec 2012 02:35:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=jVh9yc5RDbBdobNPNVpV68xdMbhhUXwDVh3JSbAnD0U=; b=HYr6quzv42CPBu6zM4HLBGZYRl61KC/iNtNAoCc+ZyIJABqmJeIo1J0SSIqYjlc2Oi vyB6RvPNunv/Dpjoy1PtdoOzIEXiV8QWzFraaHl0YgLMoer/TqMeg/owGc17Yg5x6lB8 x8VB2eixiYnLFaB/Lex3XCqJLOl1tVw3xTUm2hdLGXMwGOtxShEO9ZF0V+ss9sp15W0w Sn3I2eGQfs1lsyGqLBuYBs/HR7mSO+vB+9OlHkSkodt8HZcurR5sitFm7idN1nr9w9dg UnYzmF65f4+JzpJiRDLMjqFfowr9fq/wWLohUM66cg+fPx5SYc9sj5JIQx5vA9uxxuSw 6JFg== MIME-Version: 1.0 Received: by 10.180.103.136 with SMTP id fw8mr34174081wib.27.1356514383056; Wed, 26 Dec 2012 01:33:03 -0800 (PST) Received: by 10.216.172.197 with HTTP; Wed, 26 Dec 2012 01:33:02 -0800 (PST) In-Reply-To: References: <50D1C553.9060100@wasikowski.net> <20121220132750.GB99616@stack.nl> <50D4F2E4.7020600@wasikowski.net> <20121222171400.GA2399@anubis.morrow.me.uk> <50D5F296.9050109@wasikowski.net> Date: Wed, 26 Dec 2012 11:33:02 +0200 Message-ID: Subject: Re: ipv6_addrs_IF aliases in rc.conf(5) From: Kimmo Paasiala To: freebsd-stable@freebsd.org, FreeBSD current Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Dec 2012 10:35:25 -0000 On Mon, Dec 24, 2012 at 6:07 AM, Kimmo Paasiala wrote: > On Sat, Dec 22, 2012 at 7:49 PM, =C5=81ukasz W=C4=85sikowski > wrote: >> W dniu 2012-12-22 18:14, Ben Morrow pisze: >>> Quoth =3D?UTF-8?B?xYF1a2FzeiBXxIVzaWtvd3NraQ=3D=3D?=3D : >>>> W dniu 2012-12-22 04:41, Kimmo Paasiala pisze: >>>> >>>>> Yeah, this is problem in network.subr. An interface is not recognized >>>>> as IPv6 capable if the interface is not in "ipv6_network_interfaces" >>>>> and there's no "ifconfig_IF_ipv6" in rc.conf(5), bummer. For IPv4 it >>>>> "just works" because the interface is always assumed to be IPv4 >>>>> capable. >>>> >>>> Ok, I used ifconfig_em0_ipv6=3D"up" and it worked. So it looks like th= is: >>> >>> The documented way to do this is to just set the link-local address in >>> ifconfig_IF_ipv6, since an interface is required to have a link-local >>> address. Either configure an fe80:: address explicitly or set >>> >>> ifconfig_em0_ipv6=3D"inet6 auto_linklocal" >>> >>> Alternatively, if you set ipv6_activate_all_interfaces all interfaces >>> will be considered IPv6-capable. >> >> link-local address is assigned by default, even with ifconfig_IF_ipv6=3D= "up". >> >> root@freebsd:~ # grep -Ev '^[[:space:]]*#|^$' /etc/rc.conf ; ifconfig >> em0 | grep -E '^[[:space:]]*inet6' | head -2 >> hostname=3D"freebsd" >> ifconfig_em0=3D"up" >> ipv4_addrs_em0=3D"192.168.168.20-24/24" >> defaultrouter=3D"192.168.168.1" >> ipv6_network_interfaces=3D"em0" >> ipv6_defaultrouter=3D"2001:6a0:1cb::ffff" >> ifconfig_em0_ipv6=3D"up" >> ipv6_addrs_em0=3D"2001:6a0:1cb::1-e/128" >> sshd_enable=3D"YES" >> dumpdev=3D"NO" >> named_enable=3D"YES" >> inet6 fe80::a00:27ff:fe02:8371%em0 prefixlen 64 scopeid 0x1 >> inet6 2001:6a0:1cb::1 prefixlen 128 >> >> Of course using "inet6 auto_linklocal" instead of "up" seems a better >> way to do it, thank you for this tip. >> >> -- >> best regards, >> Lukasz Wasikowski > > > I have put up the patch at github as: > > https://gist.github.com/4362018 > > This version should work with just the ipv6_addrs_IF in rc.conf(5). I > changed the detection of ipv6 interfaces so that just having the > ipv6_addrs_IF line is enough. > > -Kimmo I've revised the patch again and updated it at gihub, https://gist.github.com/4362018. It can now be applied at top level of sources (/usr/src typically). It now does the deconfiguration in reverse order of the configuration, meaning the aliases configured with ipv6_addrs_IF are removed before the ones configured with ifconfig_IF_aliasN=3D"inet6 ...". Also as noted in my previous message it's possible to configure all IPv6 addresses with a single ipv6_addrs_IF line in rc.conf: ipv6_addrs_re0=3D"2001:db8:1111:2222::1-4/64" I consider this version of the patch pretty much completed work. It applies cleanly to HEAD version r244694 and I don't see why it wouldn't work in HEAD as well. Now, is there any interest in seeing this feature as part of future versions of FreeBSD? Could it be incorporated to HEAD and then MFC'ed to 9-STABLE if it turns out it's seen as a useful feature? Regards, Kimmo Paasiala