Sie pingen nicht dieselbe Schnittstelle , ohne physische Schnittstellen haben Sie immer noch einen "lokalen Host".
Ihr localhost
wird verwendet, um von seiner "internen" IP-Adresse auf Ihren Computer zu verweisen, nicht von einer "externen" IP-Adresse Ihres Computers. Die Ping-Pakete durchlaufen also keine physische Netzwerkschnittstelle. Nur über eine virtuelle Loopback-Schnittstelle, die die Pakete direkt von Port zu Port sendet, ohne dass physische Hops erforderlich sind.
Vielleicht fragen Sie sich immer noch, warum localhost
die Auflösung in erfolgt ::1
, während wir normalerweise erwarten, dass die Auflösung in die IPv4-Adresse erfolgt 127.0.0.1
. Beachten Sie, dass dies .localhost
traditionell eine TLD ist (siehe RFC 2606 ), die auf die Loopback-IP-Adresse verweist (für IPv4 siehe RFC 3330 , insbesondere 127.0.0.0/8).
Nachschlagen localhost
mit nslookup
gibt uns:
nslookup localhost
...
Name: localhost
Addresses: ::1
127.0.0.1
Daher bevorzugt Windows die Verwendung der IPv6-Loopback-IP-Adresse ::1
(siehe RFC 2373 ), da diese zuerst aufgeführt wird.
Okay, also, wo kommt es her, schauen wir uns die hosts-Datei an.
type %WINDIR%\System32\Drivers\Etc\Hosts
...
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
...
Hmm, wir müssen uns die DNS-Einstellungen von Windows ansehen.
In diesem KB-Artikel wird eine Einstellung beschrieben, die sich auf die Windows-Einstellungen auswirkt. Diese wird fett hervorgehoben:
Suchen Sie im Registrierungseditor den folgenden Registrierungsunterschlüssel, und klicken Sie darauf:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters
Doppelklicken Sie auf DisabledComponents, um den Eintrag DisabledComponents zu ändern.
Hinweis: Wenn der Eintrag DisabledComponents nicht verfügbar ist, müssen Sie ihn erstellen. Gehen Sie hierzu folgendermaßen vor
Zeigen Sie im Menü Bearbeiten auf Neu, und klicken Sie dann auf DWORD-Wert (32-Bit).
Typ DisabledComponents, Und die EINGABETASTE dann drückt.
Doppelklicken Sie auf DisabledComponents.
Geben Sie einen der folgenden Werte in das Feld Wert ein, um das IPv6-Protokoll auf den gewünschten Status zu konfigurieren, und klicken Sie dann auf OK:
- Geben Sie ein
0
, um alle IPv6-Komponenten zu aktivieren. (Windows Standardeinstellung)
- Geben Sie ein
0xffffffff
, um alle IPv6-Komponenten mit Ausnahme der IPv6-Loopback-Schnittstelle zu deaktivieren. Mit diesem Wert wird auch Windows so konfiguriert, dass es IPv6 (Internet Protocol Version 4) vorzieht, indem Einträge in der Präfix-Richtlinientabelle geändert werden. Weitere Informationen finden Sie unter Auswahl der Quell- und Zieladresse.
- Geben Sie
0x20
IPv4 über IPv6 bevorzugen durch Einträge in der Vorsilbe Richtlinientabelle ändern.
- Geben Sie
0x10
zu deaktivieren IPv6 auf allen nontunnel Schnittstellen (sowohl LAN und Point-to-Point Protocol [PPP] Schnittstellen).
- Geben Sie
0x01
IPv6 auf allen Tunnel - Schnittstellen zu deaktivieren. Dazu gehören das standortinterne automatische Tunneladressierungsprotokoll (ISATAP), 6to4 und Teredo.
- Geben Sie ein
0x11
, um alle IPv6-Schnittstellen mit Ausnahme der IPv6-Loopback-Schnittstelle zu deaktivieren.
Starten Sie den Computer neu, damit diese Einstellung wirksam wird.
Was ist diese Präfix-Richtlinientabelle?
netsh interface ipv6 show prefixpolicies
(oder prefixpolicy
in früheren Versionen)
Precedence Label Prefix
---------- ----- --------------------------------
50 0 ::1/128
45 13 fc00::/7
40 1 ::/0
10 4 ::ffff:0:0/96
7 14 2002::/16
5 5 2001::/32
1 11 fec0::/10
1 12 3ffe::/16
1 10 ::/96
In dieser Tabelle wird festgelegt, welche Präfixe bei DNS-Auflösungen Vorrang vor anderen Präfixen haben.
Ah, mit dieser KB könnten wir hier Einträge hinzufügen, die angeben, dass IPv4 eine höhere Priorität hat als IPv6.
Hinweis: Es gibt keinen Grund, dieses Verhalten außer Kraft zu setzen, es sei denn, es treten kompatible Probleme auf. Wenn Sie diese Einstellung auf unserem Windows Server ändern, ist unser Mail-Server kaputt gegangen. Gehen Sie also vorsichtig vor ...