65.9K
CodeProject 正在变化。 阅读更多。
Home

获取外部 IP 地址

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.77/5 (11投票s)

2012 年 9 月 3 日

CPOL
viewsIcon

84907

一种非常简单快捷的方法来获取外部 IP 地址

引言

我们连接到提供我们外部 IP 地址的服务器,并尝试从返回的 HTML 页面中解析 IP。但是,当服务器对这些页面进行小的更改或删除它们时,这些方法将无法正常工作。

这里提供一种使用一个已经稳定运行多年且能快速返回简单响应的服务器来获取外部 IP 地址的方法...

C#

private string getExternalIp()
{
    try
    {
        string externalIP;
        externalIP = (new WebClient()).DownloadString("http://checkip.dyndns.org/");
        externalIP = (new Regex(@"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"))
                     .Matches(externalIP)[0].ToString();
        return externalIP;
    }
    catch { return null; }
}

VB.NET

Private Function GetExternalIp() As String
    Try
        Dim ExternalIP As String
        ExternalIP = (New WebClient()).DownloadString("http://checkip.dyndns.org/")
        ExternalIP = (New Regex("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}")) _
                     .Matches(ExternalIP)(0).ToString()
        Return ExternalIP
    Catch
        Return Nothing
    End Try
End Function
© . All rights reserved.