Antworten:
Nun, der höchstwahrscheinliche Unterschied ist , dass Sie immer noch einen tatsächlichen zu tun haben Nachschlag von localhostirgendwo.
Wenn Sie verwenden 127.0.0.1, wandelt (intelligente) Software diese direkt in eine IP-Adresse um und verwendet sie. Einige Implementierungen von gethostbynameerkennen das gepunktete Format (und vermutlich das entsprechende IPv6-Format) und führen überhaupt keine Suche durch.
Andernfalls muss der Name aufgelöst werden. Und es gibt keine Garantie dafür, dass Ihre hostsDatei tatsächlich (zuerst oder überhaupt) für diese Auflösung verwendet wird , sodass localhostmöglicherweise eine völlig andere IP-Adresse verwendet wird.
Damit meine ich, dass auf einigen Systemen eine lokale hostsDatei umgangen werden kann. Die host.confDatei steuert dies unter Linux (und vielen anderen Unices).
/etc/nsswitch.confWählt aus, ob hostsoder DNS zuerst für eine Hostsuche verwendet wird, wenn nss ausgeführt wird.
Wikipedia fasst das gut zusammen:
Auf modernen Computersystemen wird localhost als Hostname in eine IPv4-Adresse im Netzblock 127.0.0.0/8 (Loopback) übersetzt, normalerweise 127.0.0.1 oder :: 1 in IPv6.
Der einzige Unterschied besteht darin, dass im DNS nach dem System gesucht wird, in das aufgelöst wird localhost. Diese Suche ist sehr, sehr schnell. Um zu stackoverflow.comIhnen zu gelangen, geben Sie dies beispielsweise in die Adressleiste ein (oder verwenden Sie ein Lesezeichen, auf das hier verwiesen wird). In jedem Fall sind Sie über einen Hostnamen hierher gekommen. localhostbietet eine ähnliche Funktionalität.
Einige Anwendungen behandeln "localhost" speziell. Der MySQL-Client behandelt localhost als eine Anforderung, eine Verbindung zum lokalen Unix-Domain-Socket herzustellen, anstatt tcp zu verwenden, um eine Verbindung zum Server unter 127.0.0.1 herzustellen. Dies kann schneller sein und sich in einer anderen Authentifizierungszone befinden.
Ich kenne keine anderen Apps, die localhost anders behandeln als 127.0.0.1, aber es gibt wahrscheinlich einige.
Nun, per IP ist schneller.
Grundsätzlich wird beim Aufrufen nach Servernamen die ursprüngliche IP-Adresse konvertiert.
Es ist jedoch schwierig, sich eine IP zu merken. Aus diesem Grund wurde der Domainname erstellt.
Persönlich benutze ich http://localhostanstelle von http://127.0.0.1oder http://username.
localhostauf besondere Weise behandelt wird . Andere Anwendungen werden wahrscheinlich noch nachschlagen localhost.
Der Hauptunterschied besteht darin, dass die Verbindung über Unix Domain Socket hergestellt werden kann, wie hier angegeben: localhost vs. 127.0.0.1
localhostist protokollunabhängig, sowohl IPv4 als auch IPv6 funktionieren.