IPv6: Wann lohnt sich der Umstieg?
Artikel erschienen in Swiss IT Magazine 2008/07
Über IPv6 wurde schon vor mehr als zehn Jahren diskutiert. Inzwischen ist das Protokoll Realität und wird auf allen relevanten Systemplattformen unterstützt – so auch voll und als Standardfunktionalität bei Windows Vista und dem Windows Server 2008.
Die Zielsetzung bei der Definition von IPv6 war, die schon seit langer Zeit absehbare Knappheit bei den IP-Adressen zu beseitigen. Der Adressraum von IPv4 ist mit seinen 32 Bit ausgesprochen begrenzt und dürfte bereits in naher Zukunft nicht mehr ausreichen. Hinzu kommt eine massive Ungleichverteilung dieser Adressen, die dazu führt, dass es beispielsweise in den USA Bildungseinrichtungen gibt, die über mehr IP-Adressen als der gesamte Asien-Pazifik-Raum verfügen.
Grundsätzlich kann man festhalten, dass die IPv6-Unterstützung beim Windows Server 2008 und bei Windows Vista vollständig ist. Das ergibt sich schon daraus, dass Microsoft nun mit einem neuen TCP/IP-Stack arbeitet, der sowohl IPv6 als auch IPv4 nativ unterstützt. IPv6 steht mehr bloss als Add-On zur Verfügung. Ausserdem hat Microsoft auch die Serverdienste angepasst, um IPv6 bei den Protokollen wie DNS oder auch DHCP zu unterstützen. Ebenso ist IPv6 auch im Bereich der Sicherheit, beispielsweise in Verbindung mit IPsec, nutzbar.
Wenn man die Eigenschaften eines Netzwerkadapters bei Windows Vista oder beim Windows Server 2008 betrachtet, findet sich dort neben TCP/IP v4 nun auch TCP/IP v6. Öffnet man die Eigenschaften dieses Protokolls, kann man eine manuelle Konfiguration der DHCP- und DNS-Einstellungen durchführen. Allerdings gilt auch hier, dass man in den meisten Fällen – abgesehen von Servern, welche feste IP-Adressen benötigen – mit über DHCP oder über die Autokonfiguration bereitgestellte Adressen arbeiten kann.
Ein interessanter Aspekt ist aber die angesprochene Autokonfiguration für IPv6. Bei dieser wird zunächst eine so genannte «link local»-Adresse ermittelt, die für die Verbindung mit benachbarten Geräten im lokalen Netzwerk benötigt wird. Ausserdem werden automatisch auch Informationen über die vorhandenen Router im Netzwerk ermittelt.
Wie an der Autokonfiguration deutlich wird, spielt auch DHCP weiterhin eine Rolle – obwohl sich Systeme weitgehend automatisch konfigurieren können. Das gilt sowohl für eine gezielte Bereitstellung von IP-Adressen als auch für weitere Konfigurationsdaten.
DNS ist ohnehin für die Namensauflösung weiterhin ein zentraler Dienst, der erforderlich ist. Auch hier wird, wie bei IPv4 in der Windows-Implementierung, mit dynamischen Registrierungen gearbeitet.
Darüber hinaus gibt es eine ganze Reihe von Neuerungen, die man in den meisten Fällen nicht sieht, die aber für das Funktionieren von IPv6 und generell die effiziente Kommunikation von grosser Bedeutung sind. So gibt es wichtige Erweiterungen für das Protokoll Teredo, das ein Teil von IPv6 ist. Teredo ist erforderlich, um über Router mit NAT (Network Address Translation) kommunizieren zu können. Der Dienst wird beispielsweise automatisch gestartet, wenn Remote-Unterstützung auf Clients aktiviert wird, damit diese erreicht werden können. Das System fordert dann von einem Teredo-Server – der im Netzwerk dann vorhanden sein muss – eine IPv6-Adresse an. Bei Teredo gibt es als spezifische Erweiterungen unter anderem die Nutzung von nicht verwendeten Flag-Bits, um einen Scan von potenziell erreichbaren Systemen durch bösartige Angreifer zu verhindern.
Wichtig ist auch, dass mit LLMNR (Link Local Multicast Name Resolution) gearbeitet werden kann. Dieses Protokoll erlaubt die gegenseitige Namensauflösung von IPv4- und IPv6-Hosts in einem lokalen Netzwerk und ist insbesondere für die Kommunikation innerhalb von kleineren Netzwerken von Bedeutung, wo keine DNS-Infrastrukturen oder Peer-Netzwerke vorhanden sind.
Im Bereich der Sicherheit ist die Verwendung von zufälligen IDs für die Netzwerkschnittstellen von Bedeutung, die anstelle der herstellerbezogenen IDs bei permanenten Adressen verwendet werden. Damit wird verhindert, dass Scans von Systemen auf Basis des bekannten Teils der Hersteller-ID durchgeführt werden können. Für den Aufbau von VPN-Verbin-
dungen über Wählleitungen ist zudem noch die Unterstützung von IPv6 over PPP erwähnenswert, also die Verbindung mit dem Point-to-Point-Protokoll.
Sogar IPv4 profitiert von den IPv6-Erweiterungen. IPv6 hat als eine der wesentlichen Funktionen eine Erkennung von nicht erreichbaren, benachbarten Systemen. Microsoft hat als Erweiterung des ARP-Cache (Address Resolution Protocols) eine vergleichbare Funktionalität nun auch für IPv4 realisiert. Wenn dort erkannt wird, dass Systeme nicht erreichbar sind, merkt sich der IP-Stack das und reduziert damit den Aufwand für den Versuch, entfernte Systeme zu erreichen.
Mit der nun doch sehr kompletten Unterstützung von IPv6 beim Windows Server 2008 und bei Windows Vista stellt sich auch die Frage danach, wann und wie von IPv4 auf IPv6 umgestellt werden soll – und ob überhaupt. Dabei gilt zunächst, dass man nichts überstürzen muss, wenn kein Handlungsbedarf besteht. Denn wenn man mit seiner IPv4-Infrastruktur gut auskommt, bietet IPv6 keinen unmittelbaren Nutzen. Natürlich ist IPv6 das «bessere» Protokoll in dem Sinne, dass viele Dinge automatisch kommuniziert werden und beispielsweise die globale Kommunikation auch mit mobilen Systemen sehr viel einfacher ist. Nur: In den meisten Fällen nutzt man dafür ja auch heute durchaus brauchbare Lösungen.
Wenn man sich für den Umstieg auf IPv6 entscheidet, sollte man sich im ersten Schritt genau mit den technischen Hintergründen und insbesondere den Verfahren für den parallelen Betrieb von IPv4- und IPv6-Infrastrukturen auseinandersetzen. Anschliessend müssen insbesondere Infrastruktur-Komponenten aktualisiert werden. Durch die wesentlich umfassendere Unterstützung bei den neuen Windows-Versionen macht eine Migration auch erst Sinn, wenn sowohl bei Clients als auch Servern mit diesen gearbeitet wird – oder mit funktional entsprechend gereiften Versionen anderer Betriebssysteme.
Insofern ist der Umstieg auf IPv6 ein Projekt, das man langsam angehen kann. Es ist aber sicher eine gute Lösung, es gerade in einem Migrationsprojekt auf den Windows Server 2008 und Windows Vista zu berücksichtigen. Dabei ist allerdings auch zu prüfen, ob andere Anwendungen, die tief im Netzwerk-Stack verankert sind – Backup-Programme, Kommunikationsanwendungen und Softwareverteilungslösungen sind wichtige Beispiele – auch mit IPv6 zurechtkommen. Denn wenn man parallel dazu weiterhin die IPv4-Infrastruktur benötigt, die man bereits im Griff hat, ist der Nutzen des Umstiegs natürlich begrenzt.
Letztlich muss man einfach konstatieren, dass man nun über einen sehr langen Zeitraum mit IPv4 ausgekommen ist. Daher muss man auch bei der Umstellung nichts überstürzen.
IPv6 ist eine neue Version des IP-Protokolls. Der wesentliche Unterschied zu IPv4 ist der 128-Bit-Adressraum im Vergleich zum bisherigen 32-Bit-Adressraum. Dadurch werden die Adressen zwar einerseits komplexer, andererseits aber auch flexibler. So hat ein System neben einer so genannten lokalen Adresse (link local) potenziell auch eine globale Adresse (global unicast), über die es im Internet identifiziert werden kann. Durch den grösseren Adressraum ist diese Adresse fix und muss beispielsweise nicht via NAT übersetzt oder je nach Provider angepasst werden. Zudem gibt es auch Multicast-Adressen, um mehrere Systeme ansprechen zu können.
Der Nachteil der Adressschemata liegt darin, dass die Adressen relativ komplex sind – zumindest, wenn man sie vollständig notiert. Das ergibt sich schon aus der Länge von 128 Bit. Allerdings können aufeinander folgende Nullen durch Doppelpunkte ersetzt werden, woraus sich beispielsweise ::1/128 als Loopback-Adresse für das lokale System ergibt. Andere Adressen sind beispielsweise 2001:0db8::1428:57ab für eine globale Adresse. Man wird, wenn man intensiver mit IPv6 arbeitet, nicht umhin kommen, sich intensiver mit den nicht ganz einfachen Adressschemata und deren Notation zu beschäftigen.
Wichtig bei IPv6 sind auch die ergänzenden Protokolle wie etwa Teredo, das für das Tunneling von IPv6-Datenverkehr über IPv4 benötigt wird. Im Gegensatz zum Protokoll 6to4, bei dem ebenfalls ein Tunneling erfolgen kann, kann Teredo über NAT arbeiten. Das Protokoll 6to4 benötigt dagegen eine öffentliche IPv4-Adresse des Endpunkts.