java 获取本机所有IP地址
2015-01-13 16:06
120 查看
import java.net.Inet6Address; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.util.Enumeration; import java.util.HashMap; import java.util.LinkedList; import java.util.List; import java.util.Map; public class GetLocalIpAddress { public static void main(String[] args) { Map<String, List<String>> map = getLocalIP(); for(String key : map.keySet()) { System.out.println(key + ": " + map.get(key).toString()); } } public static Map<String, List<String>> getLocalIP() { Map<String, List<String>> map = new HashMap<String, List<String>>(); Enumeration<NetworkInterface> e1; try { e1 = NetworkInterface.getNetworkInterfaces(); while (e1.hasMoreElements()) { NetworkInterface ni = e1.nextElement(); List<String> ips = new LinkedList<String>(); map.put(ni.getName(), ips); Enumeration<InetAddress> e2 = ni.getInetAddresses(); while (e2.hasMoreElements()) { InetAddress ia = e2.nextElement(); if(ia instanceof Inet6Address) { continue; // omit IPv6 address } ips.add(ia.getHostAddress()); } } } catch (SocketException e) { e.printStackTrace(); } return map; } }
output: lo: [127.0.0.1] eth0: [192.168.2.68, 192.168.2.67]
<%@ page language="java" import="java.util.*, java.net.*, java.text.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; response.setHeader("Pragma","No-cache"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> <%! public static Map<String, List<String>> getLocalIP() { Map<String, List<String>> map = new HashMap<String, List<String>>(); Enumeration<NetworkInterface> e1; try { e1 = NetworkInterface.getNetworkInterfaces(); while (e1.hasMoreElements()) { NetworkInterface ni = e1.nextElement(); List<String> ips = new LinkedList<String>(); map.put(ni.getName(), ips); Enumeration<InetAddress> e2 = ni.getInetAddresses(); while (e2.hasMoreElements()) { InetAddress ia = e2.nextElement(); if(ia instanceof Inet6Address) { continue; // omit IPv6 address } else { ips.add(ia.getHostAddress()); } } } } catch (SocketException e) { e.printStackTrace(); } return map; } %> <div style="width:60%; margin: 0 auto;"> <div>You access the server: <%=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(new Date()) %></div> <% Map<String, List<String>> map = getLocalIP(); for(String key : map.keySet()) { %> <div style="padding-left: 30px;"><%=key + ": " + map.get(key).toString() %></div> <% } %> </div> </body> </html>
相关文章推荐
- java 获取局域网中的所有主机名和IP地址
- JAVA 获取本地所有的IP地址,多网卡多IP,单网卡多个IP
- java获取本机所有的IP地址
- java获取所有网卡和ip地址
- Java:获取本机所有IP地址,内网IP
- java获取本机的所有ip地址 包括IPV6
- Java获取IP地址:request.getRemoteAddr()警惕
- 用java获取真实的ip地址
- 实现获取主机名称,IP地址,MAC地址的类 (java)
- Java正则表达式获取网页所有网址和链接文字
- 在java中获取客户端真实的IP地址
- java工具类-获取包下的所有类
- java获取指定文件夹下的所有文件名
- [JAVA100例]042、获取计算机名称和IP地址(java100例)
- Java获取客户端真实IP地址的两种方法
- 用Java来获取访问者真实的IP地址
- Java获取系统所有进程(转)
- 实现获取主机名称,IP地址的类 (java)
- java程序得到域名对应的所有IP地址(拷贝)
- java获取指定目录下所有文件