Frage

Ist es immer möglich, Localhost zu pingen und es auf 127.0.0.1 auflöst?

Ich kenne Windows Vista, XP, Ubuntu und Debian, aber tun es alle?

War es hilfreich?

Lösung

Jede korrekte Implementierung von TCP/IP reserviert die Adresse 127.0.0.1, um sich auf die lokale Maschine zu beziehen. Die Zuordnung des Namens "Localhost" an diese Adresse hängt jedoch im Allgemeinen vom System ab hosts Datei. Wenn Sie den örtlichen Eintrag aus entfernen hosts, Dann kann der Name Localhost überhaupt nicht mehr ordnungsgemäß auflösen.

Andere Tipps

127.0.0.1 ist in jedem IP -Stapel für den lokalen Host reserviert.

"Localhost" als Hostname ist nicht garantiert da sein. Wenn die Host/DNS -Einstellungen falsch konfiguriert sind, wird localhost nicht gelöst.

Beispiel für eine Debian -Box:

topaz:/root# vi /etc/hosts
[comment out localhost entry]

topaz:/root# ping localhost 
ping: unknown host localhost

Für einen Start localhost ist eher eine Konvention als eine Regel. Meistens ist es standardmäßig festgelegt, aber es gibt nichts, was es zu beauftragen gibt.

Zweitens gibt es nichts zu sagen, dass Sie immer 127.0.0.1 pingen können. Als Beispiel (auf einem Unix -System) versuchen Sie Folgendes:

sudo ifconfig lo down ping 127.0.0.1

Wie Kreuzung Said, 127.0.0.1 (falls vorhanden) wird als die lokale Maschine definiert. Aber es muss nicht existieren.

Die pedantische Antwort (Entschuldigung, Greg :), ist zu lesen RFC 3330:

   127.0.0.0/8 - This block is assigned for use as the Internet host
   loopback address.  A datagram sent by a higher level protocol to an
   address anywhere within this block should loop back inside the host.
   This is ordinarily implemented using only 127.0.0.1/32 for loopback,
   but no addresses within this block should ever appear on any network
   anywhere [RFC1700, page 5].

(Die oben genannte "Normalerweise" sollte wahrscheinlich als "oft" gelesen werden - die aktuellsten Betriebssysteme unterstützen die gesamte 127.0.0.0/8 als Loopback.)

In Bezug darauf, ob sich "localhost" immer auf 127.0.0.1 beschließt - er ist richtig, es ist im Allgemeinen gleich, aber technisch implementiert spezifisch:

~> dig localhost.t...e.org

...

;; ANSWER SECTION:
localhost.t...e.org. 86400 IN    A       127.0.0.2

Wenn die DNS -Server, mit der Ihr Client angeschlossen ist, RFC1912 folgt, sollte Localhost auf 127.0.0.1 auflösen.

RFC1912
4.1
...
   Certain zones should **always be present** in nameserver configurations:
           primary         localhost               localhost
           primary         0.0.127.in-addr.arpa    127.0
...
   The "localhost" address is a "special" address which always refers to
   the local host.  It should contain the following line:

           localhost.      IN      A       127.0.0.1

   The "127.0" file should contain the line:

           1    PTR     localhost.

Ich denke, Localhost beschließt für die meisten Plattformen, aber alle IPs, die mit 127 beginnen, auf 127.0.0.1...* Entschlossen auch in Localhost. Versuchen Sie, 127.255.255.254 zu pingen, und es wird immer noch antworten.

Theoretisch gibt es Fälle, in denen es möglicherweise nicht existiert. In der Praxis ist es immer da.

Mit angemessenen Firewalls können Sie auch den Zugriff auf den Loopback -Schnittstellen filtern. Es ist also möglich, eine Firewall -Regel einzurichten, die ICMP -Ping -Pakete zum Localhost (127.0.0.1) fallen lässt. Wie alle anderen bereits erwähnt haben, ist auch die Existenz der örtlichen und 127.0.0.1 -Adresse und die Loopback -Schnittstelle nicht garantiert.

Die Antwort ist:

127.0.0.1, oft als "Loopback" bezeichnet, ist erforderlich. Obwohl Ihr Computer Sie möglicherweise dumme Dinge ermöglichen, wie sie deaktivieren oder diesen Bereich auf einer physischen Schnittstelle konfigurieren, sind diese alle ungültig.

"Localhost" ist nur ein Hostname, der unter Konvention 127.0.0.1 als Systemadministrator oder Hostmaster betragen sollte. Sie sollten Konfigurationen vermeiden, mit denen Localhost auf andere Adressen verweisen kann.

Sie sollten Ihre Hosts -Datei nicht bearbeiten, um die Adresse von "Localhost" zu ändern. Sie sollten Ihre Domänen so konfigurieren, dass sie einen Localhost haben. und localhost.domain.com Eintrag, der auf 127.0.0.1 verweist.

Sie sollten nicht zulassen, dass Ihre Proxy -Server auf "Localhost" oder einen FQDN reagieren, der mit Localhost beginnt.

OK.

Der Grund, warum es aufgelöst wird, wird es in %Windows_Dir % System32 Treiber usw. Hosts -Datei wie folgt enthält:

127.0.0.1 Localhost

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top