I'm developing an application which needs user systems IP address for that i used below code
IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress i in localIPs)
{
if (i.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
{
txtIP.Text = i.ToString();
}
}
In many systems it works very fine but some time it captures Loop-Back ip address 127.0.0.1
. Can any one guide me how can i prevent application to capture loop-back IP.
Just filter the loopback IP
IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress i in localIPs)
{
if (i.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork
&& !IPAddress.isLoopback(i))
{
txtIP.Text = i.ToString();
}
}