您的位置:首页 > 编程语言 > C#

C# 获取IP

2013-02-17 17:26 369 查看
public  string GetClientIPv4()

  {

  String ipv4 ="";

  foreach (IPAddress ip in Dns.GetHostAddresses(GetClientIP()))

  {

  if (ip.AddressFamily.ToString() == "InterNetwork")

  {

  ipv4 = ip.ToString();

  break;

  }

  }

  if (ipv4 != String.Empty)

  {

  return ipv4;

  }

  // 原代码使用 Dns.GetHostName 方法取回的是 Server 端资料,非 Client 端。

  // 改为利用 Dns.GetHostEntry 方法,由获取的 IPv6 位址反查 DNS 记录,

  // 再逐一判断是否属于 IPv4 协议定,如果是转换为 IPv4 地址。

  foreach (IPAddress ip in Dns.GetHostEntry(GetClientIP()).AddressList)

  //foreach (IPAddress ip in Dns.GetHostAddresses(Dns.GetHostName()))

  {

  if (ip.AddressFamily.ToString() == "InterNetwork")

  {

  ipv4 = ip.ToString();

  break;

  }

  }

  return ipv4;

  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: