【问题标题】:C# asp.net Get Ipv4 ip address of a client [duplicate]C# asp.net获取客户端的Ipv4 ip地址[重复]
【发布时间】:2016-03-27 18:02:26
【问题描述】:

我下面的代码正在获取 ivp6 ip 地址我不确定如何以相同的方式获取 ipv4。

 string ipAddress = "";
           if (Dns.GetHostAddresses(Dns.GetHostName()).Length > 0)
           {
               ipAddress = Dns.GetHostAddresses(Dns.GetHostName())[0].ToString();
           }

【问题讨论】:

  • Dns.GetHostName()与客户端无关。
  • string strHostName = System.Net.Dns.GetHostName(); IPHostEntry ipEntry = System.Net.Dns.GetHostEntry(strHostName); IPAddress[] addr = ipEntry.AddressList; 在 IPAddress 数组中,您可以获得 IP 的 IPV4 和 IPV6

标签: c# asp.net


【解决方案1】:

这段代码: Dns.GetHostAddresses(Dns.GetHostName())

将返回分配给本地计算机的所有 IP 地址的数组。当您分配给 ipAddress 变量时,您使用的是“[0]”,它只获取列表中的第一个 IP 地址。

查看整个数组,您可能会发现您确实也获得了 IPv4 地址。

【讨论】:

  • 感谢您分享您的知识,但不知道该怎么做
  • 查看GetHostAddresses 文档中的示例。它显示了如何循环遍历结果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-30
  • 2013-03-19
  • 2019-01-14
  • 2019-11-13
  • 1970-01-01
  • 2012-12-05
  • 2022-01-22
相关资源
最近更新 更多