Saya bermain dengan soket di mesin lokal tanpa koneksi jaringan. Lihat di bawah:
IPAddress address = IPAddress.Any; // doesn't work
IPAddress address = IPAddress.Parse("::1"); // works
Jadi apa sebenarnya ::1
alamat IP itu? Apakah ini alamat IP default yang tersedia atau alamat loopback? apa yang terjadi dengan kode di atas (jalur kerja) pada mesin dengan alamat IP khusus dan koneksi jaringan?
EDIT:
kode tepat digunakan untuk mengikat alamat IP tertentu ke soket. Ini dia:
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);
}
IPAddress.Pars
benar IPAddress.Parse
, benar?
IPAddress.Any
adalah::0
, Anda harus menggunakanIPAddress.Loopback
untuk koneksi lokal (loopback).