首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在C#代码中获取IP地址

如何在C#代码中获取IP地址
EN

Stack Overflow用户
提问于 2010-08-25 18:14:10
回答 2查看 3.5K关注 0票数 0

可能重复:

How to get my own IP address in C#?

我需要获得系统的IP地址,而应用程序是通过C#代码运行的。

代码语言:javascript
复制
IPAddress[] ip = Dns.GetHostAddresses(Dns.GetHostName());   
foreach (IPAddress theaddress in ip)
{
    String _ipAddress = theaddress.ToString();
}

我正在使用这段代码,但这在不同的操作系统中给出了不同的结果。例如,在Windows 7中,它给出了“fe80::E3:148 d:6e5b:bcaa%14”

而Windows则给出了"192.168.10.93“。

EN

回答 2

Stack Overflow用户

发布于 2010-08-25 18:19:29

请注意,您可能有分配给计算机的多个IP地址。您可以这样检索它们(注意:这段代码忽略了回送地址):

代码语言:javascript
复制
  var iplist = new List<string>();
  foreach (var iface in NetworkInterface.GetAllNetworkInterfaces())
  {
    var ips = iface.GetIPProperties().UnicastAddresses;
    foreach (var ip in ips)
      if (ip.Address.AddressFamily == AddressFamily.InterNetwork &&
          ip.Address.ToString() != "127.0.0.1")
        iplist.Add(ip.Address.ToString());
  }

所使用的命名空间包括:

代码语言:javascript
复制
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
票数 1
EN

Stack Overflow用户

发布于 2010-08-25 18:18:15

给你-快谷歌:

http://msdn.microsoft.com/en-us/library/system.net.ipaddress(v=VS.100).aspx

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3568959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档