The Cable Guy – März 2005

Fehlersuche bei IPv6

Veröffentlicht: 01. Mrz 2005
*

Einleitung

In diesem Artikel werden Techniken und Tools beschrieben, mit denen Sie Probleme im Bezug auf die einzelnen Schichten des IPv6-TCP/IP-Protokollstacks unter Microsoft® Windows® XP Service Pack 1 (SP1), Windows XP SP2 oder Windows Server™ 2003 identifizieren können. Abhängig vom Typ des Problems können Sie hierbei auf folgende Arten vorgehen:

Sie beginnen unten im Stack und arbeiten sich hoch.

Sie beginnen oben im Stack und arbeiten sich runter.

In den folgenden Abschnitten wird die Vorgehensweise von oben nach unten verwendet. Sie beschreiben Folgendes:

Wie Sie die IPv6-Konnektivität überprüfen.

Wie Sie die DNS-Namensauflösung für IPv6-Adressen überprüfen.

Wie Sie IPv6-basierte TCP-Verbindungen überprüfen.

Auch wenn dies in den folgenden Abschnitten nicht explizit behandelt wird, können Sie natürlich auch den Netzwerkmonitor zum Sammeln von IPv6-Netzwerkverkehr und zu Lösung vieler Probleme im Bezug auf die IPv6-basierte Kommunikation verwenden.

Der Netzwerkmonitor wird mit Microsoft Systems Management Server® und als optionale Netzwerkkomponente unter Windows Server 2003 zur Verfügung gestellt. Um die im Netzwerkmonitor angezeigten Pakete jedoch korrekt interpretieren zu können, benötigen Sie detailliertes Wissen über die verwendeten Protokolle. Tiefergehende Informationen zu IPv6-Protokollen und -Prozessen finden Sie im englischsprachigen Microsoft Press-Buch Understanding IPv6 (englischsprachig).

Informationen über die Lösung allgemeiner IPv6-Probleme finden Sie hier (englischsprachig).

Zum SeitenanfangZum Seitenanfang

Überprüfen der IPv6-Konnektivität

Folgende Möglichkeiten stehen Ihnen bei Problemen mit der IPv6-Konnektivität offen:

Überprüfen der Konfiguration

Bearbeiten der Konfiguration

Überprüfen der Erreichbarkeit

Überprüfen und Bearbeiten der IPv6-Routingtabelle

Überprüfen der Router

Zum SeitenanfangZum Seitenanfang

Überprüfen der Konfiguration

Um die aktuellen IPv6-Einstellungen zu überprüfen (sowohl bei einer manuellen Konfiguration als auch bei einer dynamischen Konfiguration), führen Sie den folgenden Befehl aus:

ipconfig /allipconfig /all zeigt unter anderem die IPv6-Adressen, die Standardgateways (Router) und die DNS-Server für alle Schnittstellen an - jedoch nur für den lokalen Computer.

netsh interface ipv6 show address Dieser Befehl zeigt die einer Schnittstelle zugewiesenen IPv6-Adressen an. Mit Netsh können Sie mit Hilfe des Parameters -rRemoteComputerName auch die Konfiguration von Remotecomputern abfragen. Zur Abfrage eines Remotecomputers mit dem Namen FILESRV1 würden Sie zum Beispiel den Befehl netsh -r filesrv1 interface ipv6 show address verwenden.

Zum SeitenanfangZum Seitenanfang

Bearbeiten der Konfiguration

Um IPv6-Adressen manuell zu konfigurieren, können Sie den Befehl netsh interface ipv6 set address verwenden. In den meisten Fällen ist es jedoch nicht notwendig IPv6-Adressen manuell zu konfigurieren - sie werden den Hosts normalerweise automatisch zugewiesen.

Um Änderungen an der Konfiguration von IPv6-Schnittstellen vorzunehmen, nutzen Sie den Befehl netsh interface ipv6 set interface. Mit dem Befehl netsh interface ipv6 add dns können Sie IPv6-Adressen von DNS-Servern hinzufügen.

Zum SeitenanfangZum Seitenanfang

Überprüfen der Erreichbarkeit

Um die Erreichbarkeit des lokalen Computers oder eines Remotecomputers zu überprüfen, gehen sie folgendermaßen vor:

Überprüfen und löschen Sie den Nachbarcache. Genau wie beim ARP-Cache speichert der Nachbarcache die bereits aufgelösten Adressen der Verbindungsschicht. Um den Inhalt des Nachbarcache anzuzeigen, verwenden Sie den Befehl netsh interface ipv6 show neighbors. Mit netsh interface ipv6 delete neighbors können Sie den Nachbarcache leeren.

Überprüfen und löschen Sie den Zielcache. Der Zielcache speichert die IPv6-Adresse des nächsten Hops für ein Ziel. Mit netsh interface ipv6 show destinationcache zeigen Sie den Inhalt des Zielcache an, und mit netsh interface ipv6 delete destinationcache können Sie ihn löschen.

Pingen Sie den Standardrouter an. Mit dem Tool Ping können Sie den Standardrouter über seine IPv6-Adresse anpingen. Die IPv6-Adresse des Standardrouters erhalten Sie über ipconfig, netsh interface ipv6 show routes, route print, oder nbtstat -r. Mit dem Anpingen des Standardrouters überprüfen Sie, ob Sie lokale Knoten erreichen können und ob Sie den Standardrouter selbst erreichen können (dieser ist für die Weiterleitung von IPv6-Paketen an Remoteknoten verantwortlich). Wenn Sie den Standardrouter anpingen, dann müssen Sie die Zonen-ID der Schnittstelle angeben, über die die ICMPv6-Echo-Request-Nachrichten gesendet werden müssen. Die Zonen-ID ist der Schnittstellen-Index der Standardrouter (::/0) mit der geringsten Metrik (zu finden über die Befehle netsh interface ipv6 show routes oder route print).

Pingen Sie ein Remoteziel mit seiner IPv6-Adresse an. Wenn Sie den Standardrouter anpingen können, dann versuchen Sie ein Remoteziel anzupingen.

Überprüfen Sie die Router zum Remoteziel. Wenn Sie das Remoteziel nicht mit der IPv6-Adresse anpingen können, kann es sich um ein Routingproblem handeln. Mit dem Befehl tracert –dIPv6Adresse können Sie den Routingpfad zum Remoteziel aufzeichnen. Mit der Option -d verhindern Sie, dass Tracert DNS-Reverseabfragen für die Router durchführt - dies beschleunigt die Abfrage.

Zum SeitenanfangZum Seitenanfang

Überprüfen der Paketfilterung

Probleme bezüglich der Erreichbarkeit von Zielknoten können an der IPSec- oder Paketfilterungskonfiguration des Quellknotens, von Routern oder des Zielknotens liegen.

Auf dem Quellknoten sollten Sie die IPv6-Richtlinien mit dem IPSec6-Tool überprüfen. Weitere Informationen zum IPSec6-Tool finden Sie hier (englischsprachig).

Auf Routern, die unter Windows XP oder Windows Server 2003 ausgeführt werden, können Sie die folgenden Komponenten überprüfen:

IPSec-IPv6-Richtlinien, die über das IPSec6-Tool konfiguriert wurden.

Die einfache IPv6-Firewall. Unter Windows Server 2003 steht eine einfache Firewall für IPv6-Schnittstellen zur Verfügung. Wenn diese aktiviert ist, verwirft IPv6 eingehende TCP-SYN-Segmente und alle nicht angeforderten UDP-Nachrichten. Sie können die Firewall mit dem Befehl netsh interface ipv6 set interface interface=NameOderIndexfirewall=enabled disabled konfigurieren.

Die Internetverbindungsfirewall für IPv6. Die Internetverbindungsfirewall für IPv6 ist im Erweiterten Netzwerkpaket für Windows XP enthalten (einem kostenlosen Download für Windows XP SP1). Weitere Informationen finden Sie im Artikel Internet Protocol version 6 (IPv6) Internet Connection Firewall (englischsprachig).

Windows Firewall Die Windows Firewall ist in Windows XP Service Pack 2 und Windows Server 2003 Service Pack 1 enthalten. Weitere Informationen hierzu finden Sie im Cable Guy-Artikel aus Mai 2004 Manuelle Konfiguration der Internet Connection Firewall in Windows XP Service Pack 2.

Auf IPv6-Routern oder Firewalls von Drittanbietern können Sie die Konfiguration der IPv6-basierten Paketfilter und IPSec-Richtlinien überprüfen.

Auf dem Zielknoten überprüfen Sie Folgendes:

IPSec-IPv6-Richtlinien die über das IPSec6-Tool konfiguriert wurden

Die einfache IPv6-Firewall

Die Internetverbindungsfirewall für IPv6

Die Internetverbindungsfirewall für IPv6

Zum SeitenanfangZum Seitenanfang

Überprüfen und Bearbeiten der IPv6-Routingtabelle

Wenn lokale Ziele und Remoteziele unerreichbar sind, könnte dies an falschen oder fehlenden Routen in der lokalen IPv6-Routingtabelle liegen. Mit dem Befehl route print, netstat -r oder netsh interface ipv6 show routes können Sie die Routingtabelle anzeigen. Überprüfen Sie, dass es eine Route für das lokale Subnetz und eine Standardroute (nur, wenn ein Standardrouter konfiguriert ist) gibt. Wenn es mehrere Standardrouten mit der gleichen Metrik gibt, können Sie die IPv6-Konfiguration so ändern, dass die Standardroter die geringste Metrik verwendet, die die Schnittstelle nutzt, über die die meisten Subnetze erreichbar sind.

Um der Routingtabelle eine Route hinzuzufügen, verwenden Sie den Befehl netsh interface ipv6 add route. Mit netsh interface ipv6 set route können Sie eine bestehende Route bearbeiten und mit netsh interface ipv6 delete route eine Route löschen.

Zum SeitenanfangZum Seitenanfang

Überprüfen der Router

Wenn Sie der Meinung sind, dass es sich um ein Problem mit einem Router handelt, dann zeichnen Sie mit pathping -dIPv6Adresse den Pfad zum Ziel auf. So erfahren Sie, wie viele Pakete auf den einzelnen Routern im Pfad verloren gehen.

Zum SeitenanfangZum Seitenanfang

Überprüfen der DNS-Namensauflösung für IPv6-Adressen

Wenn die Konnektivität mit IPv6-Adressen funktioniert, jedoch mit Hostnamen nicht, liegt das Problem möglicherweise in der Hostnamensauflösung. Das weist normalerweise auf ein Problem mit der DNS-Konfiguration auf dem Client oder auf Probleme mit der DNS-Registrierung hin.

Um Probleme mit der DNS-Namensauflösung zu lösen, haben Sie die folgenden Möglichkeiten:

Überprüfen Sie die DNS-Konfiguration.

Überprüfen und löschen Sie den DNS-Cache.

Testen Sie die Namensauflösung mit Ping.

Überprüfen Sie die DNS-Antworten mit Nslookup.

Zum SeitenanfangZum Seitenanfang

Überprüfen der DNS-Namensauflösung

Überprüfen Sie auf dem Knoten mit den DNS-Problemen die folgenden Einstellungen:

Hostname

Primäres DNS-Suffix

Suchliste für DNS-Suffixe

Verbindungsspezifische DNS-Suffixe

DNS-Server

Sie erhalten diese Informationen mit ipconfig /all. Informationen zu den registrierten DNS-Namen erhalten sie mit netsh interface ip show dns.

Standardmäßig konfiguriert IPv6 die Well-Known standortlokalen Adressen von DNS-Server für alle Schnittstellen mit FEC0:0:0:FFFF::1, FEC0:0:0:FFFF::2, und FEC0:0:0:FFFF::3. Um IPv6-Adressen für weitere DNS-Server hinzuzufügen, führen Sie den Befehl netsh interface ipv6 add dns aus.

Um DNS-Namen als IPv6-Ressourceneinträge (AAAA) zu registrieren, führen Sie den Befehl ipconfig /registerdns aus.

Zum SeitenanfangZum Seitenanfang

Überprüfen und löschen des DNS-Cache

Vor dem Senden von DNS-Abfragen überprüft TCP/IP den DNS-Cache auf dem Client. Wenn dort ein Eintrag für den aufzulösenden Namen existiert, dann wird dieser verwendet. Wenn ein negativer Eintrag für einen Namen vorhanden ist, dann wird eine DNS-Auflösungsanfrage gesendet.

Mit ipconfig /displaydns können Sie den Inhalt des Cache anzeigen. Mit ipconfig /flushdns können Sie den Cache löschen - diese wird dann mit den Einträgen aus der Hosts-Datei gefüllt.

Zum SeitenanfangZum Seitenanfang

Testen der Namensauflösung mit Ping

Um die Namensauflösung zu testen, pingen Sie das Ziel mit seinem Hostnamen oder FQDN an. Ping zeigt dann den FQDN und die entsprechende IPv6-Adresse an.

Zum SeitenanfangZum Seitenanfang

DNS-Serverantworten mit Nslookup überprüfen

Wenn Ping falsche IPv6-Adressen verwendet, löschen Sie den lokalen DNS-Cache auf dem Client. Verwenden Sie dann Nslookup, um die über DNS-Server aufgelösten Anfragen zu überprüfen. Mit dem Befehl set d2 in der Nslookup-Eingabeaufforderung (Nslookup >) können Sie dafür sorgen, dass alle verfügbaren Informationen angezeigt werden. Dann überprüfen Sie den entsprechenden FQDN mit Nslookup. Suchen Sie in den angezeigten Informationen nach AAAA-Einträgen.

Zum SeitenanfangZum Seitenanfang

Überprüfen von IPv6-basierten Verbindungen

Wenn die Erreichbarkeit und die Namensauflösung korrekt arbeiten, Sie jedoch keine TCP-Verbindung mit einem Zielhost aufbauen können, haben Sie folgende Möglichkeiten:

Überprüfen Sie die Paketfilterung.

Überprüfen Sie den TCP-Verbindungsaufbau.

Zum SeitenanfangZum Seitenanfang

Überprüfen der Paketfilterung

Wie bereits weiter oben in diesem Artikel besprochen, können Probleme mit TCP-Verbindungen an der IPSec- oder Paketfilterungskonfiguration des Quellknotens, von Routern oder des Zielknotens liegen. Nutzen Sie die Verfahren aus dem Abschnitt „Überprüfen der Paketfilterung“ weiter oben in diesem Artikel, um solchen Problemen zu begegnen.

In vielen Fällen ist die Paketfilterung so konfiguriert, dass nur bestimmter Netzwerkverkehr zugelassen ist. Eine Firewall oder ein Webserver könnte zum Beispiel so konfiguriert sein, dass nur HTTP-Netzwerkverkehr zugelassen ist und jeglicher anderer Verkehr verworfen wird. Das würde bedeuten, dass Sie zwar Webseiten abrufen können, aber kein Ping ausführen oder auf Freigaben zugreifen können.

Zum SeitenanfangZum Seitenanfang

Überprüfen des TCP-Verbindungsaufbaus

Um zu überprüfen, ob TCP-Verbindungen mit bestimmten TCP-Ports auf dem Zielknoten aufgebaut werden können, können Sie den Befehl telnetIPv6Adresse TCPPort verwenden. Um zum Beispiel zu prüfen, ob der Webserver-Dienst auf einem Computer mit der Adresse 3FFE:FFFF::21AD:2AA:FF:FE31:AC89 TCP-Verbindungen über TCP-Port 80 akzeptiert, verwenden Sie den Befehl telnet 3ffe:ffff::21ad:2aa:ff:fe31:ac89 80.

Wenn der Aufbau einer TCP-Verbindung mit Telnet erfolgreich war, dann wird der Text in der Eingabeaufforderung gelöscht, und es wird (abhängig vom Protokoll) Text angezeigt. Sie können nun - abhängig vom Dienst mit dem Sie sich verbunden haben Befehle eingeben. Mit STRG+C können Sie Telnet wieder verlassen. Wenn keine TCP-Verbindung aufgebaut werden konnte, dann sehen Sie die Fehlermeldung "Verbindung mit IPv6Adresse... Es konnte keine Verbindung mit dem Host hergestellt werden, auf Port TCPPort: Verbinden fehlgeschlagen".

Ein weiteres Tool, mit dem der TCP-Verbindungsaufbau überprüft werden kann, ist „Test TCP“ (Ttcp). Mit Ttcp können Sie TCP-Verbindungen einrichten und TCP-Verbindungen überwachen. Mit Ttcp können Sie außerdem UDP-Netzwerkverkehr überwachen und einen Computer so konfigurieren, dass er einen bestimmten TCP- oder UDP-Port abfragt (ohne eine entsprechende Anwendung zu installieren). So haben Sie die Möglichkeit, die Konnektivität für bestimmten Netzwerkverkehr zu testen, bevor Sie die entsprechenden Dienste einrichten.

Weitere Informationen zu Ttcp finden Sie im Artikel Testing Network Paths for Common Types of Traffic (englischsprachig).

Zum SeitenanfangZum Seitenanfang

Zusätzliche Informationen

Weitere Informationen zu IPv6 finden Sie unter:

Microsoft IPv6-Webseite (englischsprachig)

Microsoft Press-Buch Understanding IPv6 (englischsprachig)

Windows Server 2003-Onlinehilfe (englischsprachig)


Zum SeitenanfangZum Seitenanfang