Maison >développement back-end >C++ >Comment puis-je obtenir l'adresse IP de mon serveur en utilisant C# ?

Comment puis-je obtenir l'adresse IP de mon serveur en utilisant C# ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-26 05:56:12762parcourir

How Can I Get My Server's IP Address Using C#?

Récupération de l'adresse IP de votre serveur en C #

Connaître l'adresse IP de votre serveur est crucial pour de nombreuses applications côté serveur. C # offre des moyens pratiques d'obtenir ces informations à l'aide de la classe Dns et des services Web externes.

Voici un exemple de code pour obtenir l'adresse IP locale:

<code class="language-csharp">IPHostEntry host;
string localIP = "?";
host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
    if (ip.AddressFamily == AddressFamily.InterNetwork)
    {
        localIP = ip.ToString();
        break; 
    }
}
return localIP;</code>

Cet extrait de code récupère le nom d'hôte à l'aide de Dns.GetHostName() puis itère via les adresses IP associées. Il sélectionne spécifiquement l'adresse IPv4 (AddressFamily.InterNetwork) et le renvoie.

Alternativement, pour obtenir l'adresse IP externe du serveur (utile lorsque vous derrière un NAT):

<code class="language-csharp">string externalIP = "";
using (var client = new WebClient())
{
    externalIP = client.DownloadString("http://icanhazip.com").TrimEnd();
}
return externalIP;</code>

Cette approche utilise le service Web icanhazip.com qui renvoie l'adresse IP publique comme texte brut.

Les deux méthodes fournissent des moyens fiables d'accéder à l'adresse IP de votre serveur dans une application C #. La deuxième méthode est particulièrement utile pour les scénarios où les IP internes et externes diffèrent, tels que les serveurs derrière la traduction d'adresses réseau (NAT).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn