In der C#Medium -Effizienz erhalten Sie die interne und externe IP -Adresse des Servers
Holen Sie sich die Grammatik der externen IP -Adresse
Um die externe IP -Adresse des Computers (im Internet sichtbar) zu bestimmen, verwenden Sie bitte den folgenden Code:
<code class="language-csharp">string externalIP = new WebClient().DownloadString("https://ipv4.icanhazip.com/");</code>
Dieser Code verwendet den "icanHazip" -Dienst, um die öffentliche IP -Adresse des Servers zu erhalten.
Um die interne IP -Adresse des Servers (im lokalen Netzwerk) abzurufen, verwenden Sie bitte die folgenden Technologien:
<code class="language-csharp">string localIP = Dns.GetHostEntry(Dns.GetHostName()).AddressList.Where(ip => ip.AddressFamily == AddressFamily.InterNetwork).FirstOrDefault()?.ToString();</code>
Die IP -Adressliste, die der Iteration des Server -Hostnamens zugeordnet ist, und die der IPv4 -Adressfamilie entsprechende Adresse auszuwählen.
Der im Problem bereitgestellte Code ist eine effektive Methode, kann jedoch seine Lesbarkeit und Effizienz verbessern. Die geänderte Version unten enthält folgende Verbesserungen:
<code class="language-csharp">string localIP = null; var host = Dns.GetHostEntry(Dns.GetHostName()); foreach (var ip in host.AddressList) { if (ip.AddressFamily == AddressFamily.InterNetwork) { localIP = ip.ToString(); break; } }</code>
Diese Version verwendet eine klarere Kreislaufstruktur und verarbeitet die Situation von FirstOrDefault()
zurück zu Null, um mögliche Anomalien zu vermeiden. Es wird direkt die IP -Adressliste iteriert.
Das obige ist der detaillierte Inhalt vonWie kann ich die interne und externe IP -Adresse eines Servers in C#effizient erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!