Was ist Localhost und wie unterscheidet es sich von 127.0.0.1?

Selbst wenn jedes Netzwerkgerät getrennt ist, kann Ihr Computer über eine Art Netzwerk kommunizieren. Bekannt als „Loopback“ kann ein Unix-Rechner Netzwerkkommunikationen von sich selbst und zu sich selbst über ein virtuelles Netzwerkgerät senden und empfangen. Ihr Computer kann Nachrichten von sich selbst an sich selbst senden, was Netzwerkkommunikation ohne ein funktionierendes Netzwerk ermöglicht.

Was ist 127.0.0.1?

127.0.0.1 ist die am häufigsten verwendete Loopback-IP-Adresse. Sie gehört zum reservierten Block von mehr als sechzehn Millionen IP-Adressen, die speziell für Loopback-Funktionalität verwendet werden. Ein Loopback ermöglicht es Ihrem Computer, mit sich selbst zu kommunizieren, während er Netzwerkverbindungsprotokolle verwendet.

In grober Abstraktion ist ein Loopback ein virtuelles Netzwerkgerät, das eine Netzwerkverbindung mit nur einem Endpunkt erstellt, was bedeutet, dass es am selben Gerät beginnt und endet: Ihrem Computer. Tatsächlich wird das Loopback-Gerät sogar in ipconfig mit dem Namen lo angezeigt, wie oben zu sehen ist. Die Loopback-Adressen werden hauptsächlich zur Fehlersuche verwendet (es ist ähnlich wie in einen Spiegel zu schauen) oder um auf lokale Ressourcen über eine Netzwerkschnittstelle zuzugreifen.

Auch lesen: Wie man Nginx als Reverse Proxy verwendet

Was ist localhost?

difference-localhost-127-0-0-1-networking

„localhost“ beschreibt einen Kommunikationsport, der mit dem Ursprungsserver verbunden ist. Es ermöglicht eine Netzwerkverbindung, die sich „zurückschleifen“ kann, sodass Sie Netzwerkverbindungen emulieren können, wenn ein solches Netzwerk nicht vorhanden oder verfügbar ist. In der Praxis wird localhost als synonym mit 127.0.0.1 für Nutzung und Diskussion behandelt. Es ist jedoch wichtig zu beachten, dass sie nicht strikt identisch sind.

Bevor eine DNS-Anfrage gestellt wird, um die vom Benutzer eingegebene Textzeichenfolge in eine navigierbare IP-Adresse zu übersetzen, überprüft das Betriebssystem die HOSTS-Datei auf Aliase oder Umleitungsregeln. Auf einem System, das auf Standardwerte konfiguriert ist, wird „localhost“ in einer URI unter IPv4 auf 127.0.0.1 oder ::1 für IPv6 aufgelöst. Es gibt jedoch weit mehr Loopback-Adressen als nur diese beiden. Der Block der für Loopback-Adressen reservierten IP-Adressen reicht von 127.0.0.0 bis 127.255.255.255.

In den meisten Fällen wird localhost auf 127.0.0.1 aufgelöst, dank einer Umleitungsregel in der HOSTS-Datei, wie oben erwähnt. In einigen Fällen kann localhost jedoch auf eine andere IP-Adresse abgebildet werden. localhost könnte also auf jede IP-Adresse in diesem Block zeigen, und es würde identisch funktionieren.

Fazit: Was ist der Unterschied zwischen localhost und 127.0.0.1?

Auf den meisten Maschinen sind localhost und 127.0.0.1 funktional identisch. Aber localhost ist ein Label für die IP-Adresse und nicht die Adresse selbst. Localhost könnte auf verschiedene IP-Adressen zeigen. Tatsächlich könnte es auf jede IP-Adresse zeigen, sogar auf eine außerhalb des reservierten Adressblocks. Die HOSTS-Datei kümmert sich nicht darum und wird Sie nicht aufhalten. Es wird jedoch erhebliche Funktionen auf Ihrem System beeinträchtigen und jede App zum Absturz bringen, die auf eine localhost-Verbindung angewiesen ist.

Der 127-Block von Adressen wurde für den Loopback-Adressblock gewählt, weil es der letzte Block von Klasse-A-Adressen war, der von dem binären Adresswert 00000001 bis 01111111 reicht. In IPv6 ist die Loopback-Adresse die erste Adresse, 0:0:0:0:0:0:0:1, die am häufigsten in ihrer verkürzten Form als ::1 ausgedrückt wird.

Wenn Sie von Windows zu einem Unix-System wechseln, haben Sie vielleicht bemerkt, dass Loopback praktisch synonym mit localhost ist. Sie können Ihre HOSTS-Datei verwenden, um „Loopback“ auf 127.0.0.1 umzuleiten, aber das ist mehr ein Textersatz als alles andere.