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 <[email protected]>


Reply via email to