本文共 1248 字,大约阅读时间需要 4 分钟。
在ipv4地址稀缺的今天,分配到公网ip几乎是不可能的,但是我拨号之后的ip竟然是公网IP。
将自己的电脑作为服务器·,做点好玩的程序,就成为了可能。
由于运营商的ip是动态分配的公网ip的所以就需要做一个动态解析。
但是又没有服务器,应该怎么办呢?
思路是首先服务端获取公网ip,将IP加密后作为文章发布到莫个知名论坛上。客户端通过查询这篇文章,并解密来获取ip
这样就可以实现动态解析了
由于电脑还加了个路由器,所以不能直接获取公网ip,此时就需要借助第三方网站了。
百度搜索ip会出现
通过分析找到了关键地址
http://2017.ip138.com/ic.asp
这个网页非常简洁,包含ip和地址
通过爬取这个地址即可获得公网ip
1 package动态ip发布;2
3 importjava.io.BufferedReader;4 importjava.io.FileWriter;5 importjava.io.IOException;6 importjava.io.InputStreamReader;7 importjava.io.PrintWriter;8 importjava.net.MalformedURLException;9 importjava.net.URL;10 importjava.net.URLConnection;11
12 public classMain {13 public static voidmain(String args[]) {14 System.out.println(getip.publicip());15 }16 }17 classgetip {18 public staticString publicip() {19 URL url = null;20 URLConnection urlconn = null;21 BufferedReader br = null;22 try{23 url = new URL("http://2017.ip138.com/ic.asp");//爬取的网站是百度搜索ip时排名第一的那个
24 urlconn =url.openConnection();25 br = new BufferedReader(newInputStreamReader(26 urlconn.getInputStream()));27 String buf = null;28 String get= null;29 while ((buf = br.readLine()) != null) {30 get+=buf;31 }32 intwhere,end;33 for(where=0;where
更新:
有园友对文章有些疑问
下面进行补充
如上图可以看到下面有一个链接,打开后是
按F12打开浏览器的调试工具
很容易发现这个地址,打开后就是
http://2018.ip138.com/ic.asp
转载地址:http://qaiox.baihongyu.com/