C#获取路由器分配的IP

时间:2014-04-27 02:14:39

标签: c# networking ip-address router

我不知道我是不是在使用正确的关键字进行搜索,我希望能够找到由我的路由器分配的本地计算机的IP地址。

我正在使用:

IPHostEntry host;
host = Dns.GetHostEntry(Dns.GetHostName());

foreach(IPAddress ip in host.AddressList)
{
   if(ip.addressfamily.tostring() == "InterNetwork")
   {
      return ip;
   }
}

问题是我有多个InterNetwork IP地址,因为我使用虚拟服务,所以我需要能够识别路由器分配的是哪一个。

1 个答案:

答案 0 :(得分:0)

环回怎么样?

if (IPAddress.IsLoopback(ip)) return ip; //localhost

或尝试ping本地计算机

Ping pingSender = new Ping ();
IPAddress address = IPAddress.Loopback;
PingReply reply = pingSender.Send (address);
if (reply.Status == IPStatus.Success){..}

这也可以帮到你

Showing The External IP-Address In C#