Erhalten lokalen system-ip-Adresse mit c#
Ich bin auf der Suche nach einer Methode, die erkennt, wenn das system mit dem Netzwerk verbunden ist oder bekommt die lokale ip-Adresse bei der virtuellen Maschinen installieren, auf dem system.
Dies ist der code, gibt die lokale ip-Adresse:
public static string LocalIPAddress()
{
IPHostEntry host;
string localIP = "";
host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
if (ip.AddressFamily.ToString() == "InterNetwork")
{
localIP = ip.ToString();
}
}
return localIP;
}
Aber wenn das system nicht mit dem Netzwerk verbunden, es gibt die andere VM-ip-Adresse.
Ich fand auch diese Methode
System.Net.NetworkInformation.NetworkInterface.isconnected
Methode verfügbar, aber es gibt true zurück, auch wenn das Netzwerk-Kabel nicht angeschlossen ist.
Gibt es eine Möglichkeit, herauszufinden, ob das system angeschlossen ist oder nicht?
- Vielleicht hilft das: stackoverflow.com/questions/515436/how-to-get-internet-ip
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
addr[addr.Length-1]
zuaddr[0]
. Es wäre wahrscheinlich besser die erste Adresse, dieAddressFamily.InterNetwork
wie man die anderen Antworten nicht unten.Die folgende Zeile zu tun bekommen Ihre lokale IP-Adresse
http://www.csharp-examples.net/local-ip/