I have just implemented my own DynDNS service that updates the AAAA records with my DNS provider using an IPv6 prefix and a bunch of MAC addresses of LXD container macvlan interfaces. This works well.
Now I wanted to do the same with a few client machines on the network, but it seems that my Kubuntu 20.04 notebook does not generate its IPv6 address from EUI-64. Indeed, /proc/sys/net/ipv6/conf/enp0s31f6/addr_gen_mode
contains 1.
I do not quite understand what this means, but the resulting address is not made from the MAC in any obvious way.
I echoed 0 into the file and also set
net.ipv6.conf.default.addr_gen_mode = 0
net.ipv6.conf.enp0s31f6.addr_gen_mode = 0
in /etc/sysctl.conf
, but as soon as I disable and reenable the connection via NetworkManager, /proc/sys/net/ipv6/conf/enp0s31f6/addr_gen_mode
is back to 1. What is causing this behavior?
systemd-networkd
and probably/etc/sysctl.d/40-ipv6.conf
Please do not use old editing methods on systemd systems, systemd has its own configuration./etc/sysctl.d/40-ipv6.conf
or/etc/sysctl.d/*-ipv6.conf
? The 40 is for execution order and could be another number.