永发信息网

c#怎么读取局域网内的所有主机的ip

答案:1  悬赏:30  手机版
解决时间 2021-04-19 13:59
  • 提问者网友:箛茗
  • 2021-04-19 05:47
c#怎么读取局域网内的所有主机的ip
最佳答案
  • 五星知识达人网友:白昼之月
  • 2021-04-19 07:04

          list ipList=new list();
          public void getIP()
          {
            
            //获取本地机器名 
            string _myHostName = Dns.GetHostName();
            //获取本机IP 
            string _myHostIP = Dns.GetHostEntry(_myHostName).AddressList[0].ToString();
            //截取IP网段
            string ipDuan = _myHostIP.Remove(_myHostIP.LastIndexOf('.'));
            //枚举网段计算机
            for (int i = 1; i <= 255; i++)
            {
                Ping myPing = new Ping();
                myPing.PingCompleted += new PingCompletedEventHandler(_myPing_PingCompleted);
                string pingIP = ipDuan + "." + i.ToString();
                myPing.SendAsync(pingIP, 1000, null);
                
            }
            }
            void _myPing_PingCompleted(object sender, PingCompletedEventArgs e)
        {
            if (e.Reply.Status == IPStatus.Success)
            {
                ipList.Add(e.Reply.Address.ToString());
            }
        } IP地址就在ipList里
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯