我正在开发一个需要用户系统IP地址的应用程序,我在下面使用代码
IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress i in localIPs)
{
if (i.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
{
txtIP.Text = i.ToString();
}
}
在许多系统中,它工作得非常好,但有时它会捕获环回IP地址127.0.0.1
。任何人都可以指导我如何防止应用程序捕获环回IP。
答案 0 :(得分:2)
只需过滤环回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();
}
}