Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Feb 2026 22:05:41 +0100
From:      Guido Falsi <mad@madpilot.net>
To:        freebsd-current@freebsd.org, net@FreeBSD.org
Subject:   HEADS UP: IPv6 SLAAC default algorithm changed (RFC 7217)
Message-ID:  <c1a45070-0384-49aa-afbe-d9aaf09998ae@madpilot.net>

index | next in thread | raw e-mail

Hi,

I just performed the commit at [1]. This switches the recently added 
"net.inet6.ip6.use_stableaddr" sysctl to on by default, causing all new 
IPv6 interfaces configured to get SLAAC addresses to not derive their 
addresses from the MAC address but using an implementation of the 
algorithm suggested by RFC 7217.

This is similar to the defaults on most other operating systems.

Such addresses are derived by various information on the system so as to 
be stable for the single host(OS installation) being attached to the 
same network, but making it near to impossible to track hosts between 
networks, or exposing the MAC address.

The consequence of this is that hosts configured to use SLAAC addresses 
on IPv6 interfaces will experience an IP change when upgrading across 
this change.

While I'd suggest to adjust to such a change, considering the privacy 
implications, if strictly needed the change can be prevented in two ways:

- Set the net.inet6.ip6.use_stableaddr sysctl to 0 via loader. This is 
required since the sysctl needs to be set before any interface are created.

- set the "-stableaddr" via sysctl, for example in rc.conf.


As a sidenote I plan to MFC the relevant code to stable/15, but keep the 
default for the sysctl to off there.


[1] a2eb0894b79bd0241e51c6888a52bea369ae8a6a

-- 
Guido Falsi <mad@madpilot.net>



home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?c1a45070-0384-49aa-afbe-d9aaf09998ae>