ip

王朝学院·作者佚名  2016-05-20
窄屏简体版  字體: |||超大  

csharp:获取 DNS、网关、子网掩码、ip/// <summary> /// DNS、网关、子网掩码、IP /// 涂聚文 2015 /// </summary> public class IPAddressString { /// <summary> /// IP地址 /// </summary> PRivate string _localAddress; /// <summary> /// 子网掩码 /// </summary> private string _ipSubnet; /// <summary> /// 默认网关 /// </summary> private string _defaultIPGateway; /// <summary> /// DNS /// </summary> private string _firstDNS; /// <summary> /// 备用DNS /// </summary> private string _secondDNS; /// <summary> /// /// </summary> private string _hostName; /// <summary> /// /// </summary> private string _macname; /// <summary> /// IP地址 /// </summary> public string LocalAddress { get { return _localAddress; } set { _localAddress = value; } } /// <summary> /// 子网掩码 /// </summary> public string IpSubnet { get { return _ipSubnet; } set { _ipSubnet = value; } } /// <summary> /// 默认网关 /// </summary> public string DefaultIPGateway { get { return _defaultIPGateway; } set { _defaultIPGateway = value; } } /// <summary> /// DNS /// </summary> public string FirstDNS { get { return _firstDNS; } set { _firstDNS = value; } } /// <summary> /// 备用DNS /// </summary> public string SecondDNS { get { return _secondDNS; } set { _secondDNS = value; } } /// <summary> /// /// </summary> public string HostName { get { return _hostName; } set { _hostName = value; } } /// <summary> /// /// </summary> public string Macname { get { return _macname; } set { _macname = value; } } }/// <summary> ///获取 DNS、网关、子网掩码、IP ///GEOVIN DU /// </summary> /// <returns></returns> public IPAddressString getIp() { IPAddressString ip = new IPAddressString(); ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection nics = mc.GetInstances(); foreach (ManagementObject nic in nics) { if (Convert.ToBoolean(nic["ipEnabled"]) == true) { // Get IP,SubNetMask,Gateway ip.LocalAddress = (nic["IPAddress"] as string[])[0]; ip.IpSubnet = (nic["IPSubnet"] as string[])[0]; ip.DefaultIPGateway = (nic["DefaultIPGateway"] as string[])[0]; ip.Macname = nic["MacAddress"].ToString(); ip.HostName = Dns.GetHostName();//计算机名 } } // Get DNS NetworkInterface[] ifs = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface netif in ifs) { IPInterfaceProperties properties = netif.GetIPProperties(); IPAddressCollection dnses = properties.DnsAddresses; if (dnses.Count > 0) { int i = 0; foreach (IPAddress ipAddr in dnses) { // Set DNS To DNS TextBox if (i == 0) ip.FirstDNS = ipAddr.ToString(); else ip.SecondDNS = ipAddr.ToString(); i++; } break; } } return ip; }

测试

//1 //IPAddress ip = Dns.GetHostAddresses(Dns.GetHostName()).Where(address => address.AddressFamily == AddressFamily.InterNetwork).First(); //MessageBox.Show(ip.ToString()); //2 //IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName()); //foreach (IPAddress addr in localIPs) //{ // if (addr.AddressFamily == AddressFamily.InterNetwork) // { // MessageBox.Show(addr.ToString()); // } //} //3. //IPAddress ip = GetIPAddress("dusystem.com"); //MessageBox.Show(ip.ToString()); //4. //List<string> ips = GetIPAddress(Dns.GetHostName()); //foreach (string s in ips) //{ // MessageBox.Show(s.ToString()); //} //5 IPAddressString ip = getIp(); MessageBox.Show(ip.IpSubnet);

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航