C# 獲取本定ip地址
阿新 • • 發佈:2018-12-16
第一種:使用windowsSystem.Net空間下的Dns類下的GetHostAddresses方法獲取ip地址
public static string GetLocalIP_Two() { try { IPAddress[] ips = Dns.GetHostAddresses("");//獲取本地IP for (int i = 0; i < ips.Length; i++) { //從IP地址列表中篩選出IPv4型別的IP地址 //AddressFamily.InterNetwork表示此IP為IPv4, //AddressFamily.InterNetworkV6表示此地址為IPv6型別 if (ips[i].AddressFamily == AddressFamily.InterNetwork) { return ips[i].ToString(); } } return ""; } catch (Exception ex) { MessageBox.Show("獲取本機IP出錯:" + ex.Message); return ""; } }
第二種使用windowsSystem.Net空間下的Dns類下的GetHostName方法獲取主機名再根據主機名通過GetHostEntry.AddressList獲取ip地址.
public static string GetLocalIP() { try { string HostName = Dns.GetHostName(); //得到主機名 IPHostEntry IpEntry = Dns.GetHostEntry(HostName); for (int i = 0; i < IpEntry.AddressList.Length; i++) { //從IP地址列表中篩選出IPv4型別的IP地址 //AddressFamily.InterNetwork表示此IP為IPv4, //AddressFamily.InterNetworkV6表示此地址為IPv6型別 if (IpEntry.AddressList[i].AddressFamily == AddressFamily.InterNetwork) { return IpEntry.AddressList[i].ToString(); } } return ""; } catch (Exception ex) { MessageBox.Show("獲取本機IP出錯:" + ex.Message); return ""; } }
這是在網上找到的方法,原文的連結忘了