Die Antwort von Lee B ist richtig, aber hier sind einige relevante RFCs für den Fall, dass Sie interessiert sind.
0.0.0.0:
In RFC1122 , Abschnitt 3.1.2.3:
Wir fassen nun die wichtigen Sonderfälle für IP-Adressen der Klassen A, B und C unter Verwendung der folgenden Notation für eine IP-Adresse zusammen:
{ <Network-number>, <Host-number> }
or
{ <Network-number>, <Subnet-number>, <Host-number> }
...
(a) { 0, 0 }
This host on this network. MUST NOT be sent, except as
a source address as part of an initialization procedure
by which the host learns its own IP address.
Nur das, "dieser Host in diesem Netzwerk" ... wie die Antwort von Lee B besagt, werden alle verfügbaren IP-Adressen auf Ihrem Host übersetzt. Durch das Hosten eines Dienstes unter 0.0.0.0 wird dieser Dienst automatisch auf jeder adressierbaren Schnittstelle gehostet.
127.0.0.1:
Von RFC5735 :
127.0.0.0/8 - Dieser Block wird zur Verwendung als Loopback-Adresse des Internet-Hosts zugewiesen. Ein Datagramm, das von einem übergeordneten Protokoll an eine beliebige Adresse in diesem Block gesendet wird, kehrt im Host zurück. Dies wird normalerweise nur mit 127.0.0.1/32 für Loopback implementiert. Wie in [RFC1122], Abschnitt 3.2.1.3 beschrieben, werden Adressen im gesamten 127.0.0.0/8-Block in keinem Netzwerk legitim angezeigt.
Der Unterschied zwischen 0.0.0.0 und der Loopback-Adresse 127.0.0.1 besteht darin, dass die Loopback-Adresse eine voll funktionsfähige IP-Schnittstelle innerhalb des Hosts selbst ermöglicht, unabhängig davon, wie der Rest des Netzwerk-Setups gegebenenfalls aussieht. An das Loopback-Gerät gesendeter Datenverkehr wird sofort empfangen. Es ist nicht so sehr, dass das Loopback-Netzwerk auf Ihren eigenen Host "verweist". Es ist eher so, als hätten Sie ein Mini-Netzwerksegment in Ihrem Host, das Geräte, Prozesse und Sockets öffnen und eine Verbindung herstellen kann.