自动获取 ip地址

 /// <summary>   
        /// 启用DHCP服务器   
        /// </summary>   
        public static void EnableDHCP()   
        {   
            ManagementClass wmi = new ManagementClass("Win32_NetworkAdapterConfiguration");   
            ManagementObjectCollection moc = wmi.GetInstances();   
            foreach (ManagementObject mo in moc)   
            {   
                //如果没有启用IP设置的网络设备则跳过   
                if (!(bool) mo["IPEnabled"])   
                    continue;   

                //重置DNS为空   
                mo.InvokeMethod("SetDNSServerSearchOrder", null);   
                //开启DHCP   
                mo.InvokeMethod("EnableDHCP", null);   
            }   
        }  

 

 

///是否动态获取IP

 foreach (System.Net.NetworkInformation.NetworkInterface f in System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces())
            {
                if (f.OperationalStatus == System.Net.NetworkInformation.OperationalStatus.Up)
                {
                    var dd = f.GetIPProperties(); //这里有DHCP的地址,判断下DHCP.Count>1 就是动态
                    if (dd.DhcpServerAddresses.Count() > 0)
                    {
                       return  true;
                    }
                }
            }

posted @ 2017-01-17 14:29  白杨i  阅读(291)  评论(0编辑  收藏  举报