C# 如何获取IPv4 IP而不是环回IP

C# 如何获取IPv4 IP而不是环回IP,c#,ip,loopback,C#,Ip,Loopback,我正在开发一个需要用户系统IP地址的应用程序,我在下面的代码中使用了这个地址 获取IP 在许多系统中,它工作得很好,但有时它会捕获环回ip地址127.0.0.1。有谁能告诉我如何防止应用程序捕获环回IP。只需过滤环回IP即可 IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName()); foreach (IPAddress i in localIPs) { if (i.AddressFamily == System.Net

我正在开发一个需要用户系统IP地址的应用程序,我在下面的代码中使用了这个地址

获取IP
在许多系统中,它工作得很好,但有时它会捕获环回ip地址
127.0.0.1
。有谁能告诉我如何防止应用程序捕获环回IP。

只需过滤环回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();
    }
}
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();
    }
}