码迷,mamicode.com
首页 > 其他好文 > 详细

获取本机IP地址

时间:2018-01-22 11:10:32      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:情况下   internet   intern   ==   get   inter   i++   str   多网卡   

  • 问题描述
    一台电脑有IPV4地址和IPV6地址,目前使用的基本是IPV4地址, 有些情况还有多个网卡,有线的、无线的、还有vmare虚拟的两个网卡。

  • 获取所有的IP地址

    //获取本机IP
    string HostName = Dns.GetHostName();
    IPHostEntry IpEntry = Dns.GetHostEntry(HostName); //得到主机IP
    IPAddress[] addresslIst = IpEntry.AddressList;//得到本机所有的IP地址
  • 获取IPv4协议的ip地址

    string HostName = Dns.GetHostName();
    IPHostEntry IpEntry = Dns.GetHostEntry(HostName); //得到主机IP
    IPAddress[] addresslIst = IpEntry.AddressList;
    for (int i = 0; i < addresslIst.Length; i++)
    {
    //从IP地址列表中筛选出IPv4类型的IP地址
    //AddressFamily.InterNetwork表示此IP为IPv4,
    //AddressFamily.InterNetworkV6表示此地址为IPv6类型
    if (IpEntry.AddressList[i].AddressFamily == AddressFamily.InterNetwork)
    {
        IPAddress ipAddress = IpEntry.AddressList[i];
        Console.WriteLine("ipAddress = " + ipAddress.ToString());
        break;
       }
    }
    Console.ReadKey();

上面的代码解决了只有一个网卡的情况下获取IPV4地址的问题,多网卡问题并未解决

获取本机IP地址

标签:情况下   internet   intern   ==   get   inter   i++   str   多网卡   

原文地址:https://www.cnblogs.com/shingkwan/p/8327485.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!