2011-01-06 3 views
73

Ich spielte mit Sockets auf dem lokalen Rechner ohne Netzwerkverbindung. Siehe unten:Was ist die IP-Adresse ':: 1'?

IPAddress address = IPAddress.Any; // doesn't work 
IPAddress address = IPAddress.Parse("::1"); // works 

Also, was ist genau ::1 IP-Adresse? Ist es die Standard-IP-Adresse oder die Loopback-Adresse? Was passiert mit dem obigen Code (Arbeitszeile) auf einem Computer mit dedizierter IP-Adresse und Netzwerkverbindung?

EDIT:

genauer Code verwendet wird, eine bestimmte IP-Adresse zu binden, an der Steckdose. Hier ist es:

ServicePoint sp = ServicePointManager.FindServicePoint(uri); 
sp.BindIPEndPointDelegate = new BindIPEndPoint(Bind); 
// here's the bind delegate: 
private IPEndPoint Bind(ServicePoint sp, IPEndPoint ep, int retryCount) 
{ 
    return new IPEndPoint(IPAddress.Parse("::1"), 0); 
} 
+4

'IPAddress.Any' ist' :: 0', Sie sollten 'IPAddress.Loopback' für lokale (Loopback) Verbindung verwenden. –

+0

Ich denke, das sollte auf SuperUser.com geschrieben worden sein – Kamyar

+0

Ich nehme an, der Teil, der sagt, IPAddress.Pars' ist wirklich 'IPAddress.Parse', richtig? – Brad

Antwort

100

::1 ist die Loopback-Adresse in IPv6. Stellen Sie es sich als IPv6-Version von 127.0.0.1 vor.

Siehe http://en.wikipedia.org/wiki/Localhost

+1

bei obigem Beispiel 'IPAddress.Parse (" 127.0.0.1 ") funktioniert auf meinem Rechner nicht. – Xaqron

+1

@Xaqron - das klingt eher nach einer Superuser-Frage, weil es wahrscheinlich bedeutet, dass etwas mit Ihrem IPv4 TCP/IP-Stack kaputt ist. –

+0

'IPAddress.Any' wird zu 0.0.0.0 – Brad

5

Nur wenig mehr Informationen, um es hinzuzufügen, in IPv6-Loopback-Adresse dargestellt wird, als 127 Nullen durch ein 1 d.h (0000 ... 127 times..1) gefolgt. Es sollte die Darstellung so sein ->0000: 0000: 0000: 0000: 0000: 0000: 0000: 0001, aber wir haben eine Kurzformdarstellung dafür. Wenn nur Nullen in einem Block vorhanden sind, können Sie sie durch einfache 0 ersetzen. Es wird also ->0: 0: 0: 0: 0: 0: 0: 0001. >:: 0001 - ->:: 1 Wieder können wir sehen, dass wir Läufe von Nullen haben, können sie und wir bekommen werden eliminiert.

Verwandte Themen