問(wèn)題描述
一臺(tái)電腦有IPV4地址和IPV6地址,目前使用的基本是IPV4地址, 有些情況還有多個(gè)網(wǎng)卡,有線的、無(wú)線的、還有vmare虛擬的兩個(gè)網(wǎng)卡。獲取所有的IP地址
//獲取本機(jī)IP
string HostName = Dns.GetHostName();
IPHostEntry IpEntry = Dns.GetHostEntry(HostName); //得到主機(jī)IP
IPAddress[] addresslIst = IpEntry.AddressList;//得到本機(jī)所有的IP地址
- 獲取IPv4協(xié)議的ip地址
string HostName = Dns.GetHostName();
IPHostEntry IpEntry = Dns.GetHostEntry(HostName); //得到主機(jī)IP
IPAddress[] addresslIst = IpEntry.AddressList;
for (int i = 0; i < addresslIst.Length; i++)
{
//從IP地址列表中篩選出IPv4類(lèi)型的IP地址
//AddressFamily.InterNetwork表示此IP為IPv4,
//AddressFamily.InterNetworkV6表示此地址為IPv6類(lèi)型
if (IpEntry.AddressList[i].AddressFamily == AddressFamily.InterNetwork)
{
IPAddress ipAddress = IpEntry.AddressList[i];
Console.WriteLine("ipAddress = " + ipAddress.ToString());
break;
}
}
Console.ReadKey();
上面的代碼解決了只有一個(gè)網(wǎng)卡的情況下獲取IPV4地址的問(wèn)題,多網(wǎng)卡問(wèn)題并未解決