Maison >développement back-end >C++ >Comment puis-je déterminer par programme l'adresse IP publique de mon routeur ?

Comment puis-je déterminer par programme l'adresse IP publique de mon routeur ?

DDD
DDDoriginal
2025-01-18 11:12:41536parcourir

How Can I Programmatically Determine My Router's Public IP Address?

Récupérer votre adresse IP publique : un guide pratique

Connaître l'adresse IP publique de votre routeur est essentiel pour diverses tâches de gestion du réseau. Cependant, accéder directement à ces informations depuis votre routeur n'est pas toujours simple. Ce guide explore des méthodes efficaces.

Implémentation C#

C# fournit une solution propre pour obtenir votre adresse IP externe :

<code class="language-csharp">using System.Net;
using System.Net.Http;

public static async Task<IPAddress> GetExternalIpAddress()
{
    string externalIpString = (await new HttpClient().GetStringAsync("http://icanhazip.com")).Replace("\r\n", "").Replace("\n", "").Trim();
    if (!IPAddress.TryParse(externalIpString, out IPAddress ipAddress)) return null;
    return ipAddress;
}</code>

Méthode C# héritée

Une approche moins moderne, mais fonctionnelle en C# :

<code class="language-csharp">using System.Net;

public static void Main(string[] args)
{
    string externalIpString = new WebClient().DownloadString("http://icanhazip.com").Replace("\r\n", "").Replace("\n", "").Trim();
    IPAddress externalIp = IPAddress.Parse(externalIpString);

    Console.WriteLine(externalIp.ToString());
}</code>

Solutions en ligne de commande

Ces commandes multiplateformes offrent des alternatives :

  • wget : wget -qO- http://bot.whatismyipaddress.com
  • boucle : curl http://ipinfo.io/ip

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