Java 如何获得本机IP 或者 公网IP

你应该是拔号上网
如果可以的话,请搜索一下网络,得到java怎么调用dos的方法,然后你可以解析ipconfig /all这个命令的结果,得到你想要的公网IP

大部分情况下,用户都是通过路由来上网的,也就是说,电脑根本不知道自己的公网IP是多少,他只知道路由分配给它的内网IP,这个时候,我们只能通过别的网站来判断。
下面是以前我以前写的一个小程序,通过www.ip138.com
得到自己的公网IP
public static void main(String[] args) throws Exception {
  // 
  URL url = new URL("http://www.ip138.com/ip2city.asp");
  URLConnection conn = url.openConnection();
  conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15");
  conn.setRequestProperty("Content-Type", "text/html");
  conn.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
  InputStream is = conn.getInputStream();
  BufferedReader br = new BufferedReader(new InputStreamReader(is, "GB2312"));
  String line = null;
  while ((line = br.readLine()) != null) {
   if (line.contains("您的IP地址是")) {
    // System.out.println(line);
    int start = line.indexOf('[') + 1;
    int end = line.indexOf(']');
    System.out.println(line.substring(start, end));
   }
  }
  br.close();
 }

 

猜你喜欢

转载自comedsh.iteye.com/blog/1189998