C# 获取外网IP地址

简介: 很多情况下我们需要获取外网的IP地址,一般用自带的方法获取到的都是不准确,往往获取到的是内网的IP地址,所以需要采用外部网站接口来获取。代码通过访问第三方接口来获取真实的ip地址 public static string GetIPAddress() { string ip...

很多情况下我们需要获取外网的IP地址,一般用自带的方法获取到的都是不准确,往往获取到的是内网的IP地址,所以需要采用外部网站接口来获取。

代码

通过访问第三方接口来获取真实的ip地址

 public static string GetIPAddress()
 {
     string ip = "";
     try
     {
        WebClient MyWebClient = new WebClient();
        MyWebClient.Credentials = CredentialCache.DefaultCredentials;//获取或设置用于向Internet资源的请求进行身份验证的网络凭据

        Byte[] pageData = MyWebClient.DownloadData("http://www.net.cn/static/customercare/yourip.asp"); //从指定网站下载数据

        string pageHtml = Encoding.Default.GetString(pageData);  //如果获取网站页面采用的是GB2312,则使用这句

        //string pageHtml = Encoding.UTF8.GetString(pageData); //如果获取网站页面采用的是UTF-8,则使用这句

        string[] str = HtmlHelper.GetElementsByTagName(pageHtml, "h2");
        string[] str1 = str[0].Replace("<h2>", "").Split(',');

        ip = str1[0];
    }
    catch (WebException webEx)
    {
        webEx.Message.ToString()
    }
    return ip;
 }
目录
相关文章
|
8月前
|
网络协议 网络架构 C++
一文搞定IP地址
本文详细的介绍了IP地址的所有细节,学习完本章小白将打下坚实的基础
|
2月前
|
网络协议 CDN
IP地址相关讲解
IP地址相关讲解
14 0
|
网络协议 网络架构 数据格式
IP 地址
IP网络地址采用“网络●主机”的形式,其中网络部分是网络的地址编码,主机部分是网 络中一个主机的地址编码。IP 地址的格式如图下所示。
311 0
IP 地址
|
网络协议 网络架构
内网ip与外网ip
内网ip与外网ip
601 0
内网ip与外网ip
|
弹性计算 网络协议 网络安全
阿里云公网IP主机如何访问无公网IP主机?
阿里云公网IP主机如何访问无公网IP主机?
691 0
|
网络协议
IP地址表达方式
## IP地址表达 IPv4地址是四个字节表述,最大表示范围是 255.255.255.255 ## 网络区域 首先在 255.255.255.255 这么大的一个网络中有(4,294,967,294个可用IP),一台计算机在这么大一群网络地址中想要快速路由到最终主机上很难实现,这相当于网络设备在转发数据包时,要在约 40亿次的查找才能找到最终的目标主机。 同时为了更
3058 0