Linux-Kernel-Parameter (sysctls)
Eine vollständige Liste der IPv6 relevanten Kernel-Parameter findet man in der Kernel-Dokumentation. Da es aber sehr viele Parameter gibt sollen hier die Parameter gesammelt werden, die in unserer Dokumentation verwendet werden.
Howto:
Wie schon anfangs erwähnt ist es möglich Kernel-Parameter zur Laufzeit zu manipulieren. Darüberhinaus ist es möglich Werte beim Booten zu setzen um somit den Wert dauerhaft zu setzen.
Zur Laufzeit
Mit dem sysctl
Befehl können Kernel-Parameter während Laufzeit ausgelesen oder verändert werden.
Dabei werden die Werte die im procfs
unter /proc/sys/..
stehen editiert.
Um den Wert für net.ipv6.conf.enp0s25.use_tempaddr
aus zu lesen muss lediglich als root folgendes ausgeführt werden:
$ sysctl net.ipv6.conf.enp0s25.use_tempaddr
net.ipv6.conf.enp0s25.use_tempaddr = 0
Um den Wert für net.ipv6.conf.enp0s25.use_tempaddr
zu setzten muss lediglich als root folgendes ausgeführt werden:
$ sysctl net.ipv6.conf.enp0s25.use_tempaddr=2
Zur Bootzeit
Eine Dauerhafte Änderung ist durch /etc/sysctl.conf
möglich (oder durch einzelne Dateien unter /etc/sysctl.d/
Um net.ipv6.conf.enp0s25.use_tempaddr
beim Booten auf 2 zu setzen muss folgendes in /etc/sysctl.conf
stehen:
# Enable IPv6 Privacy Extensions
net.ipv6.conf.enp0s25.use_tempaddr = 2
Liste IPv6 Relevanten Kernel-Parameter die in der Dokumentation verwendet wurden
Stable-Privacy Adresse RFC 7217
Für die Konfiguration einer Stable-Privacy Adresse (sihe hier) wurden folgende Parameter verwendet:
stable_secret - IPv6 address
This IPv6 address will be used as a secret to generate IPv6
addresses for link-local addresses and autoconfigured
ones. All addresses generated after setting this secret will
be stable privacy ones by default. This can be changed via the
addrgenmode ip-link. conf/default/stable_secret is used as the
secret for the namespace, the interface specific ones can
overwrite that. Writes to conf/all/stable_secret are refused.
It is recommended to generate this secret during installation
of a system and keep it stable after that.
By default the stable secret is unset.
addr_gen_mode - INTEGER
Defines how link-local and autoconf addresses are generated.
0: generate address based on EUI64 (default)
1: do no generate a link-local address, use EUI64 for addresses generated
from autoconf
2: generate stable privacy addresses, using the secret from
stable_secret (RFC7217)
3: generate stable privacy addresses, using a random secret if unset
Um das Interface enp0s25
beim Booten für Stable-Privacy zu konfigurieren sollte folgendes in /etc/sysctl.conf
stehen:
# Enable IPv6 stable privacy mode
net.ipv6.conf.enp0s25.stable_secret = 1fce:5cb3:2f4e:509a:78bb:c2a0:748b:c43d
net.ipv6.conf.enp0s25.addr_gen_mode = 2
Wobei net.ipv6.conf.enp0s25.stable_secret
einmalig initialisiert werden muss (siehe Stable-Privacy)
Temporäre Adresse RFC 4941
Für die Konfiguration einer Temporäre Adresse (siehe hier) wurden folgende Parameter verwendet:
use_tempaddr - INTEGER
Preference for Privacy Extensions (RFC3041).
<= 0 : disable Privacy Extensions
== 1 : enable Privacy Extensions, but prefer public
addresses over temporary addresses.
> 1 : enable Privacy Extensions and prefer temporary
addresses over public addresses.
Default: 0 (for most devices)
-1 (for point-to-point devices and loopback devices)
temp_valid_lft - INTEGER
valid lifetime (in seconds) for temporary addresses.
Default: 604800 (7 days)
Um das Interface enp0s25
beim Booten für Temporäre Adresse zu konfigurieren sollte folgendes in /etc/sysctl.conf
stehen:
# Enable IPv6 Privacy Extensions
net.ipv6.conf.enp0s25.use_tempaddr = 2