stable/9 preferring IPv4 over IPv6, what changed?

Dimitry Andric dim at FreeBSD.org
Sun Dec 11 22:52:41 UTC 2011


On 2011-12-11 23:33, Ulrich Spörlein wrote:
> long story short: telnet foo on stable/8 will first try connecting via
> IPv6, then via IPv4 (foo has A and AAAA records). On stable/9 it's the
> other way round.
> 
> This trips up my setup, where a bunch of hosts (some behind NAT) can all
> talk to each other over their IPv6 addresses (some are tunneled), but
> cannot do so via IPv4.
> 
> Is this due to changes in bind or the resolver?

Most likely due to changes in the IPv6 startup scripts and rc.conf
settings.  The behaviour seems to be determined by multiple settings in
rc.conf, first of all:

  ip6addrctl_policy={ipv4_prefer|ipv6_prefer|AUTO}

where the default value is AUTO.  Values of ipv4_prefer and ipv6_prefer
do what you expect them to.

In case of AUTO, and if you don't have /etc/ip6addrctl.conf with
explicit settings, /etc/rc.d/ip6addrctl checks the value of
ipv6_activate_all_interfaces.  If it is YES, IPv6 is preferred, if it is
NO or unset, IPv4 is preferred.

What are your IPv6-related settings in rc.conf?



More information about the freebsd-stable mailing list