Warum ist der Localhost IP 127.0.0.1?
Geeks auf der ganzen Welt kennen ihren lokalen Host als 127.0.0.1, aber warum ist diese spezifische Adresse aller verfügbaren Adressen für den lokalen Host reserviert? Lesen Sie weiter, um in die Geschichte der lokalen Hosts einzutauchen.
Bild von GMPhoenix; als Tapete hier verfügbar.
Die heutige Question & Answer-Sitzung wird von SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-Gruppe von Q & A-Websites.
Die Frage
SuperUser-Leser Roee Adler, der sich für die Standard-IP-Adresse von localhost interessiert, hat der Community folgende Frage gestellt:
Ich habe mich gefragt, woher die Entscheidung kommt
localhost
IP-Adresse127.0.0.1
. Was ist die Bedeutung von127
? Was ist die Bedeutung von0.0.1
?
Was ist die Bedeutung? Obwohl es möglich ist, Ihre gesamte geeky Existenz zu leben, ohne die Antwort auf diese Fragen zu kennen, sind wir bereit, sich einzuarbeiten.
Die Antworten
Mehrere Mitwirkende traten bei der Beantwortung von Roees Frage bei. Jeder ihrer Beiträge leistet einen Einblick in den Ort, an dem wir alle zu Hause sind. John T schreibt:
127 ist die letzte Netzwerknummer in einem Klasse-A-Netzwerk mit einer Subnetzmaske von
255.0.0.0
.127.0.0.1
ist die erste zuweisbare Adresse im Subnetz.127.0.0.0
kann nicht verwendet werden, da dies die Drahtnummer ist. Die Verwendung anderer Zahlen für den Host-Teil sollte jedoch funktionieren und zur Verwendung zurückkehren127.0.0.1
. Sie können es selbst ausprobieren, indem Sie einen Ping-Befehl ausführen127.1.1.1
wenn du willst. Warum haben sie bis zur letzten Netzwerknummer gewartet, um dies zu implementieren? Ich glaube nicht, dass es dokumentiert ist.
Hyperslug führt einige Archivierungsprobleme durch, indem er durch alte Memoranden zum Thema gräbt:
Die früheste Erwähnung, die ich bezüglich 127s Zuordnung als Loopback finden kann, ist November 1986 RFC 990, verfasst von Reynolds und Postel:
Die Adresse Null ist als "dies" zu verstehen, wie in "dieses Netzwerk"..
Zum Beispiel könnte die Adresse 0.0.0.37 als Host 37 in diesem Netzwerk interpretiert werden.
…
Der Klasse A-Netzwerknummer 127 wird die "Loopback" -Funktion zugewiesen, dh ein Datagramm, das von einem Protokoll einer höheren Ebene an eine Netzwerkadresse 127 gesendet wird, sollte innerhalb des Hosts zurückgeschleift werden. In keinem Netzwerk sollte jemals ein an eine Netzwerkadresse 127 "gesendetes" Datagramm angezeigt werden.
Bereits im September 1981 waren RFC 790, 0 und 127 reserviert:
000.rrr.rrr.rrr Reserviert [JBP]… 127.rrr.rrr.rrr Reserviert [JBP]0 und 127 waren die einzigen reservierten Class-A-Netzwerke bis 1981. 0 wurde für das Verweisen auf einen bestimmten Host verwendet, sodass 127 für Loopback übrig blieb.
Ich weiß, das beantwortet die Frage nicht, aber das ist so weit zurück, wie ich es könnte. Es wäre vielleicht sinnvoller gewesen, 1.0.0.0 für Loopback zu wählen, dies wurde jedoch bereits an BBN Packet Radio Network übermittelt.
Während wir alle 127.0.0.1 als localhost kennen und lieben, ist es erwähnenswert, dass es nicht für immer localhost sein wird. In 127.0.0.1 wird der localhost in der IPv4-Kommunikation festgelegt. Da IPv6 langsam die Kontrolle übernimmt, wird es mit einer intuitiveren Nummer versehen: 0: 0: 0: 0: 0: 0: 0: 1.
Haben Sie der Erklärung etwas hinzuzufügen? Ton aus in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Lesen Sie hier die vollständigen Diskussionsthreads.