Maison >développement back-end >C++ >Comment puis-je obtenir l'adresse IP publique de mon routeur par programme et via la ligne de commande ?

Comment puis-je obtenir l'adresse IP publique de mon routeur par programme et via la ligne de commande ?

DDD
DDDoriginal
2025-01-18 11:27:10235parcourir

How Can I Get My Router's Public IP Address Programmatically and via Command Line?

Récupération de l'adresse IP publique de votre routeur : un guide complet

Connaître l'adresse IP publique de votre routeur est essentiel pour diverses tâches réseau. Cependant, le déterminer directement à partir de votre réseau local peut être difficile.

Voici plusieurs méthodes efficaces pour obtenir ces informations cruciales :

Solutions C# :

Pour les opérations asynchrones en C#, utilisez HttpClient :

<code class="language-csharp">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>

Une alternative synchrone utilisant WebClient :

<code class="language-csharp">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>

Méthodes de ligne de commande (Linux et Windows) :

Utilisez wget pour une solution concise :

<code class="language-bash">wget -qO- http://bot.whatismyipaddress.com</code>

Vous pouvez également utiliser l'utilitaire polyvalent curl :

<code class="language-bash">curl http://ipinfo.io/ip</code>

Ces méthodes fournissent des moyens fiables de récupérer l'adresse IP publique de votre routeur, quel que soit votre système d'exploitation ou vos préférences de programmation.

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