Potrzebuję wiedzieć, jak uzyskać wszystkie interfejsy sieciowe z ich adresem IPv4. Albo tylko sieć bezprzewodowa i Ethernet.Jak uzyskać interfejs sieciowy i właściwy adres IPv4?
Aby uzyskać wszystkie interfejsy sieciowe szczegóły Używam tego:
foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) {
if(ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 ||
ni.NetworkInterfaceType == NetworkInterfaceType.Ethernet) {
Console.WriteLine(ni.Name);
}
}
I żeby uzyskać wszystkie hostowane adresy IPv4 komputera:
IPAddress [] IPS = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress ip in IPS) {
if (ip.AddressFamily == AddressFamily.InterNetwork) {
Console.WriteLine("IP address: " + ip);
}
}
Ale jak uzyskać interfejs sieciowy i jego prawy adres IP?
Proszę przeczytać trochę ostrożniej. Zobacz [GetIPProperties] (http://msdn.microsoft.com/en-us/library/system.net.networkinformation.networkinterface.getipproperties.aspx) –
@JohnSaunders ok, sprawdziłem twój link przeczytaj ... i wypróbowałem to. ale nie dostałem adresu IPV4 !! jak 192.168.1.25 !! –
OK, to trochę bardziej subtelne niż myślałem. Zobacz [IPGlobalProperties.GetUnicastAddresses] (http://msdn.microsoft.com/en-us/library/system.net.networkinformation.ipglobalproperties.getunicastaddresses.aspx) –