首页 > 后端开发 > C++ > 如何以编程方式和通过命令行获取路由器的公共 IP 地址?

如何以编程方式和通过命令行获取路由器的公共 IP 地址?

DDD
发布: 2025-01-18 11:27:10
原创
234 人浏览过

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

检索路由器的公共 IP 地址:综合指南

了解路由器的公共 IP 地址对于各种网络任务至关重要。 然而,直接从本地网络内确定这一点可能具有挑战性。

以下是获取此重要信息的几种有效方法:

C# 解决方案:

对于 C# 中的异步操作,请使用 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>
登录后复制

使用 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>
登录后复制

命令行方法(Linux 和 Windows):

利用 wget 获得简洁的解决方案:

<code class="language-bash">wget -qO- http://bot.whatismyipaddress.com</code>
登录后复制

或者,使用多功能的 curl 实用程序:

<code class="language-bash">curl http://ipinfo.io/ip</code>
登录后复制

这些方法提供了可靠的方法来检索路由器的公共 IP 地址,无论您的操作系统或编程偏好如何。

以上是如何以编程方式和通过命令行获取路由器的公共 IP 地址?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板