Product SiteDocumentation Site

10.5. IPv6

IPv6, der Nachfolger von IPv4, ist eine neue Version des IP-Protokolls, das mit dem Ziel entwickelt wurde, seine Schwächen zu beheben, vor allem die Knappheit verfügbarer IP-Adressen. Dieses Protokoll handhabt die Netzwerkschichten; es adressiert die Rechner, überträgt Daten an ihr vorgesehenes Ziel und erledigt falls erforderlich die Datenfragmentierung (mit anderen Worten, Pakete in Stücke aufzuteilen und diese Stücke bei der Ankunft wieder in ihrer richtigen Reihenfolge zusammenzusetzen. Die Größe der Pakete hängt von den Netzwerkverbindungen ab.).
Bei Debian-Kerneln wird IPv6 im Core-Kernel ausgeführt (abgesehen von einigen Architekturen, bei denen es als Modul unter dem Namen ipv6 kompiliert wurde). Die IPv6-Äquivalente grundlegender Programme wie ping und traceroute heißen ping6 und traceroute6 und sind in den Paketen iputils-ping beziehungsweise iputils-tracepath verfügbar.
Das IPv6-Netzwerk wird ähnlich wie IPv4 in /etc/network/interfaces konfiguriert. Wenn jedoch dieses Netzwerk global verfügbar sein soll, müssen Sie einen IPv6-fähigen Router haben, um den Datenverkehr an das weltweite IPv6-Netzwerk zu übermitteln.

Beispiel 10.10. Beispiel einer IPv6-Konfiguration

iface eth0 inet6 static
    address 2001:db8:1234:5::1:1
    netmask 64
    # Disabling auto-configuration
    # autoconf 0
    # The router is auto-configured and has no fixed address
    # (accept_ra 1). If it had:
    # gateway 2001:db8:1234:5::1

IPV6 Subnetze haben eine Netzmaske von 64 Bit. Das heißt, es stehen 264 eindeutige Adressen innerhalb des Subnetzes zur Verfügung. Das ermöglicht der Stateless Address Autoconfiguration (SLAAC), eine Adresse basierend auf der MAC-Adresse der Netzwerkkarte auszuwählen. Standardmäßig findet der Kernel automatisch IPv6 Router und konfiguriert das Netzwerk, wenn SLAAC in Ihrem Netzwerk und IPv6 auf Ihrem Computer aktiviert sind.
Dieses Verhalten könnte Einfluss auf den Datenschutz haben. Wenn Sie häufig zwischen Netzwerken wechseln, z.B. mit Ihrem Laptop, möchten Sie eventuell nicht, dass Ihre MAC-Adresse Teil Ihrer öffentlichen IPv6 Adresse ist. Denn dadurch ist es sehr einfach, das gleiche Gerät über Netzwerke hinweg zu identifizieren. Eine Lösung dafür bieten IPv6-Erweiterungen, die eine zusätzliche, zufällig erzeugte Adresse an die der Schnittstelle anhängen, diese periodisch ändern und sie vor allem für ausgrehende Verbindungen verwenden. Eingehende Verbindungen können weiterhin die von SLAAC erzeugte Adresse verwenden. Die folgende Vorlage zur Verwendung in /etc/network/interfaces aktiviert diese Datenschutzerweiterungen.

Beispiel 10.11. IPv6 Datenschutzerweiterungen

iface eth0 inet6 auto
    # Prefer the randomly assigned addresses for outgoing connections.
    privext 2

IPv6-Verbindungen können weiterhin, wie unter IPv4, beschränkt werden: die Debian-Standardkernel enthalten eine Anpassung von netfilter an IPv6. Dieses IPv6-fähige netfilter ist auf ähnliche Weise wie sein IPv4-Pendant konfiguriert, es ist lediglich ip6tables statt zu iptables verwenden.

10.5.1. Tunneln

Falls keine native IPv6-Verbindung verfügbar ist, kann als Rückgriff ein Tunnel über IPv4 verwendet werden. Gogo6 ist ein (kostenloser) Anbieter solcher Tunnel:
Um einen Freenet6-Tunnel verwenden zu können, müssen Sie sich mit einem Freenet Pro Konto auf der Webseite registrieren, dann das Paket gogoc installieren und den Tunnel konfigurieren. Hierzu muss die Datei /etc/gogoc/gogoc.conf editiert werden: die Zeilen userid und password, die Sie per E-Mail erhalten, sollten hinzugefügt und server durch authenticated.freenet6.net ersetzt werden.
IPv6-Konnektivität wird allen Rechnern eines lokalen Netzes durch das Hinzufügen der folgenden drei Anweisungen zu der Datei /etc/gogoc/gogoc.conf angeboten (unter der Annahme, dass das lokale Netz mit der eth0-Schnittstelle verbunden ist):
host_type=router
prefixlen=56
if_prefix=eth0
Der Rechner wird hiermit zum Zugangsrouter für ein Subnetz mit einem 56-Bit-Präfix. Sobald der Tunnel diese Veränderung erkennt, muss das lokale Netzwerk hierüber informiert werden; dies bedeutet, dass der radvd-Daemon installiert werden muss (aus dem Paket ähnlichen Namens). Dieser IPv6-Konfigurationsdaemon hat eine ähnliche Rolle wie dhcpd in der IPv4-Welt.
Anschließend muss die Konfigurationsdatei /etc/radvd.conf erstellt werden (siehe /usr/share/doc/radvd/examples/simple-radvd.conf als Ausgangspunkt). In unserem Fall muss nur das Präfix verändert werden, das durch das von Freenet6 bereitgestellte ersetzt werden muss; es ist in der Ausgabe des Befehls ifconfig zu finden im Absatz zur tun-Schnittstelle.
Dann führen Sie /etc/init.d/gogoc restart und /etc/init.d/radvd start aus, und das IPv6-Netzwerk sollte funktionieren.