了解路由器的公共 IP 地址对于各种网络管理任务至关重要。 然而,直接从路由器访问此信息并不总是那么简单。 本指南探讨了有效的方法。
C# 实现
C# 提供了一个干净的解决方案来获取您的外部 IP 地址:
<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>
旧版 C# 方法
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>
命令行解决方案
这些跨平台命令提供了替代方案:
wget -qO- http://bot.whatismyipaddress.com
curl http://ipinfo.io/ip
以上是如何以编程方式确定路由器的公共 IP 地址?的详细内容。更多信息请关注PHP中文网其他相关文章!