C#/.NET获取本机的外网IP地址的简单方法

获取本机(网关)的外网IP,在C#里面实现的方法,通常是遍历获取到的本机的IP地址,然后判断,不过这种方式只能取得独立拨号或具有独立公网IP的地址,对于局域网的方式,是取不到的,这种方式的代码大致如下:

System.Net.IPHostEntry ips = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName());
foreach (System.Net.IPAddress ip in ips.AddressList)
{
    Console.WriteLine(ip.ToString());
}

要获取本机出口的外网IP,实际是需要利用访问某个可以返回本机出口的外网IP的internet资源,例如: 本站的ip提供程序

访问此IP提供程序,将只返回一个你的出口IP的字符串,使用起来是超简单的,代码如下:

using (System.Net.WebClient wc = new System.Net.WebClient())
{
    Console.WriteLine(wc.DownloadString("http://www.zu14.cn/ip/"));
}

Console.ReadLine();

posted @ 2009-01-09 21:26  三角猫  阅读(4731)  评论(0编辑  收藏  举报