Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Jan 2013 16:02:43 -0500
From:      "J.R. Oldroyd" <fbsd@opal.com>
To:        Ulrich =?UTF-8?B?U3DDtnJsZWlu?= <uqs@freebsd.org>
Cc:        Gregory Shapiro <gshapiro@freebsd.org>, stable@freebsd.org
Subject:   /etc/rc.d/ip6addrctl
Message-ID:  <20130108160243.74a93ab8@shibato>
In-Reply-To: <20130108184609.GJ35868@acme.spoerlein.net>
References:  <20130108151837.GF35868@acme.spoerlein.net> <20130108180920.GJ36633@rugsucker.smi.sendmail.com> <20130108184609.GJ35868@acme.spoerlein.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 8 Jan 2013 19:46:09 +0100 Ulrich Sp=C3=B6rlein <uqs@freebsd.org>
wrote:

> Turns out it was the missing setting of
> ip6addrctl_policy=3D"ipv6_prefer" in rc.conf that also bit me in
> strange and mysterious ways on another machine where I did the
> upgrade. It's very unfortunate that this will runtime-break sendmail
> and I honestly don't know why we make ipv4 the default in this day
> and age.
>=20
> Can some IPv6 guru chime in here? This is all thoroughly confusing.
>=20
> Thanks!
> Uli
>=20

This bit me too, although with something other than sendmail.

It's /etc/rc.d/ip6addrctl that sets the preference for IPv6 or IPv4.  I
think the logic is a bit confusing here, or at least isn't consistent
with what the documentation for these settings (in rc.conf(5)) suggests.

In the startup script, IPv6 is preferred if:
	either:	ip6addrctl_policy is set to "ipv6_prefer"
	or:	ip6addrctl_policy is set to "auto", you've not
		specified your own policy config file and
		ipv6_activate_all_interfaces is set to true

In the documentation, it implies that using ipv6_activate_all_interfaces
is probably not needed for most users:
	Note that it is not always necessary to set this variable to
	=E2=80=9CYES=E2=80=9D to use IPv6 functionality on FreeBSD.  In most cases,
	just configuring ifconfig_=E2=9F=A8interface=E2=9F=A9_ipv6 variables works.

Seems to me that the ip6addrctl script should also prefer IPv6 if any
interface has IPv6 enabled using one of the ifconfig_(interface)_ipv6
variables.

	-jr



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130108160243.74a93ab8>