Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
Die große Anzahl an nutzbaren Adressen unter IPv6 ermöglichen es, dass jedes Gerät eine eigene Adresse erhält, die es über seine gesamte Lebensdauer hinweg behalten kann. Dazu kommt noch der Umstand, dass für den Interface Identifier, den hinteren Teil der Adresse, die MAC der Netzwerkkarte herangezogen wird. Somit findet sich eine Eigenschaft der Hardware in der Adresse wieder, wodurch das zugehörige Interface über seine IP-Adresse eindeutig identifizierbar wird. Die „IPv6 Privacy Extensions“ (RFC 4941 ) sollen hier Abhilfe schaffen.
Sind die Privacy Extensions aktiviert, so erzeugen sie zu den bereits existierenden IP-Adressen eine weitere Adresse je Präfix und Netzwerkschnittstelle. Diese zusätzliche Adresse wird zufällig erzeugt hat nur eine bestimmte Lebensdauer, während derer sie für die Kommunikation genutzt wird. Läuft die Lebenszeit ab, so wird wieder eine neue Adresse generiert und für die Kommunikation genutzt während die bisherige noch eine Zeit aktiv bleibt, um eventuell noch eingehende Netzwerkpakete empfangen zu können.
Somit existiert die auf Basis der MAC-Adresse generierte IP-Adresse zwar weiter, kommt jedoch letztlich nicht zum Einsatz.
Beginnend mit Ubuntu 12.04 LTS sind die Privacy Extensions von Haus aus aktiviert. Die entsprechende Konfigurationsdatei ist /etc/sysctl.d/10-ipv6-privacy.conf.
In der Standardkonfiguration beträgt die maximale Lebensdauer einer IP-Adresse 7200 Sekunden (2 Stunden), die Dauer, während der sie aktiv genutzt bevorzugt wird, 3600 Sekunden (1 Stunde).
Bis Ubuntu 11.10 stehen die Privacy Extensions zwar zur Verfügung, jedoch werden sie nicht standardmäßig aktiviert. Um dies zu erreichen, erstellt man mit root-Rechten [1] eine Datei /etc/sysctl.d/60-ipv6-privacy.conf und trägt [2] das folgende ein:
net.ipv6.conf.all.use_tempaddr = 2 net.ipv6.conf.default.use_tempaddr = 2
Möchte man die Lebensdauer der temporären Adressen ändern, so kann man die entsprechenden Optionen (siehe unten) ebenfalls in dieser Datei ablegen.
Wurde die Datei erstellt, muss man noch dafür sorgen, dass die neue Konfiguration auch aktiviert wird. Dies kann mittels eines Neustarts geschehen, eleganter ist es jedoch, die Konfiguration mit folgendem Befehl neu einzulesen:
sudo sysctl -p /etc/sysctl.d/60-ipv6-privacy.conf
Die Einstellmöglichkeiten der Privacy Extensions sind recht übersichtlich.
Option | Beschreibung |
net.ipv6.conf.all.use_tempaddr | 0 = Privacy Extensions nicht aktiv 1 = temporäre Adresse bereitstellen 2 = temporäre Adresse bereitstellen und aktiv nutzen |
net.ipv6.conf.all.temp_prefered_lft | Dauer in Sekunden, wie lange die Adresse anderen vorgezogen wird |
net.ipv6.conf.all.temp_valid_lft | Dauer in Sekunden, wie lange die Adresse vorhanden ist |
all
wurde als Bezeichner für die Netzwerkschnittstelle in diesen Beispielen eingesetzt, es sind die folgenden Varianten möglich:
default
- Bezeichner für neue Schnittstellen
all
- Bezeichner für alle Schnittstellen
eth0
, eth1
, wlan0
, wifi0
usw - Bezeichnung einer spezifischen Netzwerkschnittstelle
Werden vom Standard abweichende Konfigurationen gesetzt, so wird empfohlen jede Option jeweils mit default und all einzufügen.
Die vorhanden IPv6-Adressen lassen sich mit folgendem Befehl prüfen:
ip -6 addr
Die Ausgabe für ein Interface könnte dann beispielsweise so aussehen:
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000 inet6 2001:db8:ff00:8cb0:a1b5:b96d:3d80:f9d3/64 scope global temporary deprecated dynamic valid_lft 257sec preferred_lft 0sec inet6 2001:db8:ff00:8cb0:221:beff:feef:dead/64 scope global dynamic valid_lft 6859sec preferred_lft 3259sec inet6 fe80::221:beff:feef:dead/64 scope link valid_lft forever preferred_lft forever
Die unterste Adresse ist die Link-Lokale Adresse (scope link
), sie wird von den Privacy Extensions nicht beeinflusst.
Die mittlere Adresse ist die globale Adresse (scope global
), die ebenfalls aus der MAC-Adresse erzeugt wurde. Sie wurde nicht statisch festgelegt sondern mittels der IPv6-Autokonfiguration erzeugt (dynamic
).
Die obere Adresse wurde durch die Privacy Extensions erzeugt (temporary
). Diese Adresse hat keine Gültigkeit mehr (deprecated
), da die „Preferred Lifetime“ abgelaufen ist (preferred_lft 0sec
). Diese Adresse ist noch 257 Sekunden gültig (valid_lft 257sec
) und kann noch zum Empfang von Netzwerkpaketen, die an diese Adresse gesendet wurden, genutzt werden. Für ausgehende Netzwerkanfragen (zum Beispiel Aufruf einer Webseite) kommt die mittlere Adresse (2001:db8:ff00:8cb0:221:beff:feef:dead
) zum Einsatz.
Überprüft man nun, mit welcher Adressse man im Internet auftaucht, zum Beispiel mit der Seite test-ipv6.com , dann sollte in diesem Beispiel 2001:db8:ff00:8cb0:221:beff:feef:dead
herauskommen. In der Regel nutzt Ubuntu jedoch die temporäre Adresse, so sie denn noch nicht abgelaufen ist.
Diese Revision wurde am 8. Januar 2017 15:23 von mfm erstellt.