Teredo bohrt IPv6-Tunnel durch Firewalls

Seite 2: Einrichtung unter Windows

Inhaltsverzeichnis

Auf einen Windows XP seit Servicepack 2 benötigt Teredo lediglich den IPv6-Stack, der sich in den Netzwerkeinstellungen über die Eigenschaften der Netzwerkkarte oder als Administrator mit dem Netsh-Kommando netsh interface ipv6 install installieren lässt.

Anschließend sollte der Befehl netsh interface ipv6 show addresses an der Netzwerkkarte link-lokale IPv6-Adresse anzeigen, die sich am Präfix fe80:: erkennen lässt.

Anschließend zeigt das Kommando netsh interface ipv6 show teredo unter XP (und Vista) den Teredo-Status an: Meldet der Befehl beim Punkt "Status:" den Wert "qualified", steht der Teredo-Tunnel und der Heise-IPv6-Versuchsserver www.six.heise.de sollte auf ICMPv6-Pakete antworten, die das Kommando ping -6 www.six.heise.de anfordert. Endet das Ping-Kommando mit Fehlermeldungen, kann es sein, dass der Client den Tunnel noch nicht aufgebaut hat. Rufen Sie das Kommando einfach ein zweites Mal auf, denn das unten beschriebene Auffinden des Teredo-Relays dauert oft etwas länger. Sollte Teredo ein verwaltetes Netzwerk erkennen und sich daher deaktivieren, hilft in einigen Netzen der Teredo-Enterpriseclient, der sich über Netsh anschalten lässt:

netsh interface ipv6 set teredo enterpriseclient

Wenn auch diese Einstellung nicht hilft, steht der Rechner in einem Netz, das wahrschienlich für Teredo nicht taugt. Das Verfahren versagt nämlich in LANs, deren Routern symmetrisches NAT einsetzen oder von einer Firewall geschützt werden, die UDP-Verkehr blockiert. Auskunft über den Status oder den aktiven Tunnel liefert wiederum der Befehl netsh interface ipv6 show teredo.

Teredo-Parameter
---------------------------------------------
Typ : client
Servername : default
Clientaktual.-intervall : default
Clientport : default
Status : dormant
Typ : Teredo client
Netzwerk : managed
NAT : none (global connectivity)

Diese Ausgabe zeigt eine "schlafenden" Teredo-Client, der mit hoher Wahrscheinlich keine Tunnel aufbauen kann, denn er erkennt den NAT-Typ nicht und deklariert das LAN als verwaltetes Netz.

Steht jedoch der Teredo-Tunnel, liefern die Kommandos ipconfig /all oder netsh interface ipv6 show address die global gĂĽltige Adresse des Teredo-Tunneladapters. Diese Adresse startet immer mit 2001:0:, die mit fe80:: beginnende (link-lokale) Adresse des Adapters gilt nur im aktuellen Netzwerksegment.

Windows XP benötigt keine weiteren Einstellungen, wenn der Rechner über Programme wie Firefox 3, Internet Explorer 7 oder den SSH-Client Putty Internet-Adressen per IPv6 abruft.

Microsoft aktiviert Teredo in seiner aktuellen Windows-Version Vista, schaltet es aber automatisch ab, wenn das Betriebssystem merkt, dass das lokale Netz IPv6 spricht, die Vista-Firewall abgeschaltet ist oder das LAN verwaltet wird, was Teredo an einem Active Directory bemerkt.

Besitzt der Vista-Rechner nur link-lokale oder Teredo-IPv6-Adressen an seinen Netzwerkadaptern, erfragt das Betriebssystem die für IPv6 nötigen AAAA-Record nur dann, wenn ein Anwendungsprogramm wie ping sie ausdrücklich anfordert. So ermittelt unter Vista der Befehl ping -6 www.six.heise.de die korrekte IPv6-Adresse zum Heise-IPv6-Testserver, ein Aufruf der Website scheitert hingegen mit einer Fehlermeldung des DNS-Resolvers.

Dieses Manko behebt eine IPv6-Adresse für die Netzwerkkarte, die mit der Zifferfolge 2001: beginnt und den Präfix /48 besitzt. In unseren Versuchen funktionierten beispielsweise die Adressen aus dem für Dokumentationszwecke reservierten IPv6-Bereich 2001:db8, die sich über die Eigenschaften der Netzwerkverbindung in der Systemsteuerung oder per Netsh setzen lassen.

netsh interface ipv6 set address "LAN-Verbindung" 2001:db8::1/48

Besitzt der Rechner mehrere Netzwerkkarten, müssen Sie eventuell die Zeichenfolge "LAN-Verbindung" anpassen: Der Aufruf von ipconfig /all oder route -6 print gibt unter Windows die Namen aller Netzwerkadapter aus. Dabei zeigt es auch die Nummer des Adapters, die für den letzten Schritt ist – das Setzen einer Route. Hat das Teredo-Interface beispielsweise die Nummer 9, setzt der Befehl

netsh interface ipv6 add route ::/0 9

die nötige Route. Weitere Details zum Routing und zu Teredo finden sich in dem Microsoft-Dokument IPv6 Transsition Technologies.