ubuntuusers.de

IPv6: Was bedeutet das für mich?

allgemein.png

Das neue Internetprotokoll ist in der IT-Welt in aller Munde. Auch wir haben uns in dem Artikel „IPv6: Überblick“ mit den Hintergründen und Grundlagen dazu beschäftigt und versucht zu zeigen, welchen Nutzen und welche Risiken IPv6 mit sich bringen kann. Doch inwiefern wirkt sich IPv6 nun auf den einzelnen Anwender aus und was gibt es beim Umgang mit IPv6 zu beachten?

Hinweis:

Dieser Artikel ist Teil der IPv6-Ikhaya-Serie. Weitere Artikel sind „IPv6: Überblick“ und „IPv6: ubuntuusers.de“.

Die meisten Nutzer dürften von der Einführung des neuen Internetprotokolls nur wenig direkt mitbekommen. Im Büro kümmert sich die Firmen-eigene IT darum, dass der Betrieb funktioniert, und zu Hause regeln der Internet-Provider und der eigene DSL-Router, ob IPv6 im Heimnetz verfügbar ist oder nicht. In den meisten Fällen wird dies auch problemlos funktionieren, doch wenn ältere Komponenten oder Software mit speziellen Anforderungen oder einfach der Wunsch nach IPv6-Verfügbarkeit zusammentreffen, steht gegebenenfalls Ratlosigkeit ins Haus.

Denn im Zusammenhang mit dem sich künftig weiter verbreitenden Dual-Stack-Betrieb vieler Webangebote, können ältere Betriebssysteme und Browser schon mal ins Stolpern geraten. Inwiefern das eigene System mit Dual-Stack zurechtkommt, kann ein kurzer, JavaScript-basierter Test auf der Webseite test-ipv6.com zeigen. Hier wird überprüft, ob IPv6 für den Rechner nutzbar ist oder, sollte diese Prüfung negativ ausfallen, der PC wenigstens keine Schwierigkeiten bekommt, wenn er an eine Webseite gerät, die mit Dual-Stack betrieben wird. Ist dies nicht der Fall, könnte der Rechner in nächster Zeit Probleme mit dem Zugriff auf Webseiten bekommen.

Daheim

Um überhaupt IPv6 praktisch nutzen zu können, wird natürlich IPv6 im eigenen Netzwerk benötigt. Nur die wenigsten Anbieter von Internetzugängen versorgen ihre privaten Kunden im Moment mit einem IPv6-Präfix und falls doch, so können zumeist nur aktuelle Internet-Router, die in den letzten beiden Jahren entwickelt wurden oder eine Aktualisierung erfahren haben, damit umgehen und dem Nutzer eine IPv6-Verbindung zur Verfügung stellen.

Dadurch, dass sich bei IPv6 die Geräte automatisch selbst eine IP-Adresse vergeben und dann versuchen, mit ihrem Umfeld in Kontakt zu treten, fällt für den Anwender prinzipiell recht wenig an, was zu tun ist. Sobald IPv6-Unterstützung vorhanden ist, werden die entsprechenden Komponenten in der Regel ohne Zutun des Anwenders auch mit IPv6 funktionieren.

Kann ich IPv6 nutzen?

Damit das neue Internetprotokoll tatsächlich genutzt werden kann, müssen alle Teile der Kette, über die die Kommunikation läuft, dies auch unterstützen: Eigener Rechner, lokales Netzwerk, Internet-Provider und auch der jeweilige Server.

Beherrscht mein System IPv6?

Auch mit IPv6 sollte ein Rechner immer auf seiner Loopback-Adresse horchen und dort auf ICMP-Anfragen, wie z.B. ping6, antworten. Dies ist auch unabhängig davon, ob eine IP-Adresse für das lokale Subnetz ausgehandelt wurde oder nicht. Der Test mit dem Kommandozeilenwerkzeug ping6 zeigt die Funktionsfähigkeit des Netzwerk-Stacks in Bezug auf IPv6 (Die Adresse ::1 in IPv6 entspricht dabei der Adresse 127.0.0.1 bei IPv4, also localhost - das ist die Adresse, unter der sich immer der eigene Rechner erreichen lässt).

ping6 -c4 ::1 

Die Ausgabe sollte in etwa wie folgt aussehen:

64 bytes from ::1: icmp_seq=1 ttl=64 time=0.018 ms

Erhält man als Antwort ein Network is unreachable, hat schon der eigene Rechner Probleme mit IPv6. Es wurde entweder, wie leider oft fälschlicherweise empfohlen, die IPv6-Unterstützung ausgeschaltet oder die Verbindung wird anderweitig blockiert, zum Beispiel durch eine lokale Firewall wie ufw.

Beherrscht mein Netzwerk IPv6?

Wenn der Netzwerk-Stack IPv6-fähig ist, sollte eine IP-Adresse für das lokale Subnetz ausgehandelt werden. Diese ist in der Auflistung der Adressen mittels ip addr durch den Zusatz global gekennzeichnet.

ip -6 addr | grep global 

Die Ausgabe könnte wie folgt lauten:

inet6 2001:db8:ff00:8de2:82ee:73ff:fe05:d020/64 scope global dynamic 

Eine als „global“ markierte Adresse ist die Voraussetzung dafür, mit dem Internet kommunizieren zu können. Lässt man den grep-Befehl weg, sieht man auch nicht-globale IP-Adressen. Steht nur eine Adresse mit dem Zusatz link zur Verfügung, handelt es sich um die Link-Lokale Adresse, die nur für den Datenaustausch mit dem lokalen Netzwerk genutzt werden kann - die Internet-Nutzung ist damit nicht möglich. Die Bezeichnung dynamic besagt, dass die Adresse nicht statisch gesetzt, sondern vom System selbst ausgehandelt wurde. Ein weiterer Adress-Typ ist temporary, zu deutsch „befristet“, die zum Beispiel von den IPv6 Privacy Extensions erzeugt wird.

Ist im eigenen Netzwerk keine Unterstützung für das neue Internetprotokoll durch einen Router vorhanden, kann man als Behelfslösung Miredo nutzen. Dies bietet IPv6-Support jedoch nur für den eigenen PC, nicht das ganze lokale Netzwerk.

Beherrscht mein Provider IPv6?

Ist IPv6 nur im eigenen Subnetz verfügbar, bringt das noch nicht allzu viel, letztlich muss auch der Weg in die Weiten des Internets über IPv6 laufen. Das Kommando traceroute6 zeigt den Weg vom eigenen Rechner zu einem über IPv6 erreichbaren Server und listet alle Router auf, die als Zwischenstation dienen:

traceroute6 www.example.org 

www.example.org 🇬🇧 ist hier ein dankbares Opfer. Diese Seite wird von der Internet Assigned Numbers Authority vorgehalten, der Organisation, die für die Vergabe von IP-Adressen verantwortlich ist. Diese Internetadresse ist für Dokumentationszwecke vorbehalten und ist sowohl mittels IPv4 als auch IPv6 erreichbar.

Anmerkung: In diesem Artikel werden im Allgemeinen IP-Adressen mit dem Präfix 2001:db8::/32 verwendet. Dieser Adressbereich wurde wie die Domains example.net, example.org und example.com (festgelegt in RFC 2606 🇬🇧 ) für Dokumentationszwecke reserviert und findet laut Empfehlung in RFC 3849 🇬🇧 im Internet keine Verwendung. Dies soll verhindern, dass Probleme mit Adressen, die Anleitungen und Schulungsunterlagen verwendet werden, auftreten. Für den Fall example.org werden im folgenden Beispiel jedoch die korrekten, tatsächlich erreichbaren Adressen verwendet.

traceroute to www.example.org (2001:500:88:200::10), 30 hops max, 80 byte packets
 1  fritz.box (2001:db8:ff00:8de2:be05:43ff:fef8:3c7d)  4.016 ms  4.007 ms  4.005 ms
 2  gw-4200.cgn-01.de.sixxs.net (2001:db8:ff00:de2::1)  79.581 ms  93.674 ms  105.717 ms
 3  2001:db8:1234:3::42 (2001:db8:1234:3::42)  117.543 ms  131.415 ms  145.507 ms
 4  core-eup2-ge1-22.netcologne.de (2001:4dd0:1234:3:dc40::a)  159.595 ms  171.648 ms  185.518 ms
 5  rtamsix-te4-2.netcologne.de (2001:4dd0:a2b:6d:30::b)  201.444 ms  215.543 ms  229.404 ms
 6  20gigabitethernet1-3.core1.ams1.ipv6.he.net (2001:7f8:1::a500:6939:1)  241.447 ms  254.986 ms  264.752 ms
 7  10gigabitethernet1-4.core1.lon1.he.net (2001:470:0:3f::1)  284.765 ms  93.286 ms  91.696 ms
 8  10gigabitethernet7-4.core1.nyc4.he.net (2001:470:0:128::1)  171.311 ms  185.397 ms  199.480 ms
 9  10gigabitethernet2-3.core1.ash1.he.net (2001:470:0:36::1)  217.446 ms  231.550 ms  247.466 ms
10  eqx-ix-ashburn.dc.icann.org (2001:504:0:2:0:1:6876:1)  259.528 ms  273.391 ms  285.435 ms
11  2001:500:88:200::10 (2001:500:88:200::10)  299.523 ms  311.575 ms  325.220 ms

Da www.example.org auch auf IPv6 antwortet, lässt sich damit die Verbindung vom eigenen PC ins Internet überprüfen. Obenstehender trace zeigt eine beispielhafte, funktionierende Verbindung mittels des Tunnelbrokers SixXS. Die Meldung connect: Network is unreachable würde darauf hinweisen, dass eine IPv6-Kommunikation nicht möglich ist.

Bietet der eigene Provider keine Anbindung mittels des neuen Internetprotokolls, können hier Tunnelbroker wie zum Beispiel SixXS 🇬🇧, Hurricane Electric 🇬🇧 oder gogo6 🇬🇧 zum Einsatz kommen. Am einfachsten ist deren Nutzung, wenn der eigene Breitband-Router dies unterstützt, jedoch können entsprechende Tunnel auch mittels eines AICCU-Clients 🇬🇧 auf dem eigenen Rechner eingerichtet werden.

Ubuntu

Aufbauend auf den Linux-Kernel beherrschte Ubuntu den Umgang mit IPv6-Netzen prinzipiell von Anfang an (der erste Code mit IPv6-Bezug wurde bereits 1996 in den Kernel 2.1 aufgenommen). Auch die wichtigsten Anwendungen kommen mittlerweile damit zurecht, sodass man Ubuntu - wie die meisten Distributionen - diesbezüglich als zukunftssicher bezeichnen kann. Ubuntu 12.04 stellt hier allerdings einen kleinen Meilenstein dar. In dieser Version werden die Privacy Extensions standardmäßig aktiviert - und damit wird mit den aktuellen Windows-Versionen gleichgezogen. Auch die Ubuntu-Firewall, das auf den Kernel-eigenen Paketfilter netfilter aufbauende ufw (Uncomplicated Firewall), ist entsprechend für die korrekte Funktion in Zusammenhang mit IPv6 konfiguriert.

Server

Natürlich muss auch der Server im Internet, dessen Webdienste man nutzen will, IPv6 ebenfalls unterstützen. Tut er dies nicht, kann er auf diesem Weg nicht angesprochen werden.

Hat der Server eine IPv6-Adresse?

Zuerst benötigt der Server eine IPv6-Adresse und diese muss auch mittels DNS bekannt gemacht werden. DNS stellt im Prinzip ein großes Adressbuch dar, in dem Internetadressen den Servernamen zugeordnet sind. Für IPv4-Adressen ist hier ein A Resource Record hinterlegt, IPv6-Adressen finden sich im sogenannten AAAA Resource Record.

Ob für einen Server eine IPv6-Adresse hinterlegt ist, lässt sich mit Linux-Bordmitteln recht einfach überprüfen, hier am Beispiel www.example.org:

nslookup -type=AAAA www.example.org 

Erhält man die folgende Ausgabe, braucht man den Punkt gar nicht weiter zu verfolgen, es liegt dann kein Eintrag für eine IPv6-Adresse vor:

** server can't find www.example.org: NXDOMAIN

Diese Ausgabe ist dagegen um einiges viel versprechender:

www.example.org	has AAAA address 2001:500:88:200::10

Dies bedeutet, dass die Adresse 2001:500:88:200::10 für www.example.org gefunden wurde. Man könnte nun auch http://[2001:500:88:200::10] in die Adresszeile des Webbrowsers eingeben und würde dann bei dem Server landen, der die Seite www.example.org bereitstellt. Der Grund für die eckigen Klammern ist im übrigen der, dass Doppelpunkte in URLs Server und Ziel-Port voneinander trennen. Bei den einfachen Punkten in IPv4-Adressen war das bislang kein Problem, IPv6-Adressen müssen jedoch derart gekapselt werden, um Fehlinterpretationen der Browser zu verhindern.

Ist der Server per IPv6 erreichbar?

Mit einer Adresse alleine ist es noch nicht getan, so muss auch im wirklichen Leben jemand dem Postzusteller die Türe öffnen und das Paket annehmen. In die Netzwerkwelt übertragen, muss der Server auch auf Anfragen über IPv6 antworten. Eine solche Anfrage lässt sich auch hier wieder mit ping6 auslösen:

ping6 -c4 www.example.org 

Erhält man eine positive Antwort, so ist auch diese letzte Hürde genommen und der Kommunikation über IPv6 steht nichts mehr im Wege.

Anmerkung: Natürlich kann man auch direkt die Erreichbarkeit mittels ping6 prüfen und den Test mit nslookup ausführen, wenn ping6 einen Fehler zurückgeliefert hat. Die Reihenfolge oben wurde gewählt, da sie so auch der entspricht, die im Hintergrund bei jeglichen Anfragen an andere Server und Systeme abläuft.

Ob nun der Browser, E-Mail-Programm oder Instant Messenger tatsächlich mittels IPv6 oder IPv4 kommunizieren, ist bei Dual-Stack nicht leicht zu sagen. Zwar soll IPv6 bevorzugt werden, wenn beide Seiten es unterstützen, doch das hängt auch von der Umsetzung der jeweiligen Anwendung ab.

Fazit

In nächster Zeit dürften die wenigsten Anwender wirklich etwas von der IPv6-Einführung mitbekommen, sofern Betriebssystem und Anwendungssoftware mit Dual-Stack klarkommen. Ob die eigene Umgebung derzeit schon IPv6-fähig sein muss, ist zumindest momentan noch eher eine philosophische Frage, denn in nächster Zeit wird kein Web-Dienst die IPv4-Unterstützung einstellen. Wer jedoch zukunftssicher werden oder bleiben möchte, kommt derzeit nicht umhin, sich mit IPv6 auseinanderzusetzen. Ein guter Teil der Anleitungen hierzu sind leider recht breit im Internet verteilt, weshalb wir bitten, den folgenden Aufruf zu beachten:

Hinweis:

Helfer gesucht!
Der Bereich IPv6 im Wiki fühlt sich vernachlässigt und benötigt dringend Hilfe. Interessierte und kundige Anwender können sich im Wiki am Ausbau des Bereichs und an zugehörigen Diskussionen im Wiki beteiligen. Punkte, die ergänzt werden können, sind zum Beispiel:

  • Grundlagen

  • Werkzeuge zum Umgang mit IPv6

  • Anwendungs-Spezifika

  • Übergangslösungen (Miredo, SixXs-Tunnel usw.)

Auch in den Netzwerk-Foren Netzwerk und Internetzugang einrichten und Fortgeschrittene Netzwerkkonfiguration sind kundige Anwender, die Hilfesuchenden qualifizierte Antworten geben können, von den Supportern gern gesehen.