从服务器内部获取公网IP
发布日期:2021-06-29 05:35:02 浏览次数:2 分类:技术文章

本文共 1912 字,大约阅读时间需要 6 分钟。

前言

    在大公司里面网络架构可谓是复杂,如果您的服务(域名)需要公网出口IP权限,比如果某些服务如银行,微信企业提现等接口需要配置到微信或者银行商户后台做IP白名单,这个可真是一件不简单的事情,前期踩了个坑,以为域名解析出来的VIP(虚拟ip)就是公网出口IP,最后解决不了找运维sa,让他们给做个服务映射的公网出口IP(我的服务有十几台机器没法完全配置到微信商户后台),但是好像他们给我配置多了,给错了IP,我郁闷了一天,感觉他们不会犯这种低级错误,然后找他们理论是否配置错误,竟然不承认,我这边也没办法去证明,网上就找了几个查询公网出口IP的网页,自己取抓页面数据,最终解决。

介绍

常用的IP出口探测工具:

http://www.ip138.com/ips138.asp

使用

首先我再服务器内部写个应用去访问这个页面,找到我的IP,此时这个IP就是对应的公网出口IP,有可能是多个,因为每个机房可能有一个出口IP。

@Controller    public class TestController {                @RequestMapping("/test/getPublicIp")        @ResponseBody        public static String getPublicIp() {            try {                String path = "http://www.ip138.com/ips138.asp";// 要获得html页面内容的地址                URL url = new URL(path);// 创建url对象                HttpURLConnection conn = (HttpURLConnection) url.openConnection();// 打开连接                conn.setRequestProperty("contentType", "GBK"); // 设置url中文参数编码                conn.setConnectTimeout(5 * 1000);// 请求的时间                conn.setRequestMethod("GET");// 请求方式                InputStream inStream = conn.getInputStream();                // readLesoSysXML(inStream);                BufferedReader in = new BufferedReader(new InputStreamReader(                        inStream, "GBK"));                StringBuffer buffer = new StringBuffer();                String line = "";                // 读取获取到内容的最后一行,写入                while ((line = in.readLine()) != null) {                    buffer.append(line);                }                String str = buffer.toString();                String ipString1 = str.substring(str.indexOf("["));                String ipsString2 = ipString1.substring(ipString1.lastIndexOf("]")-14 ,                        ipString1.lastIndexOf("]")+1);                // 返回公网IP值                return ipsString2;            } catch (Exception e) {                System.out.println("获取公网IP连接超时");                return "连接超时";            }        }    }

 

转载地址:https://blog.csdn.net/zhizunmimi/article/details/90767219 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:java微信公众号开发
下一篇:美团酒旅实时数据规则引擎应用实践

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月27日 17时01分11秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章