获取IP地址
来源:互联网 发布:vb 墨镜 编辑:程序博客网 时间:2024/04/28 10:46
1、获取本机器的IP地址和端口号
public static void main(String [] args){ InetAddress netAddress = getInetAddress(); System.out.println("host ip:" + getHostIp(netAddress)); System.out.println("host name:" + getHostName(netAddress)); Properties properties = System.getProperties(); Set<String> set = properties.stringPropertyNames(); //获取java虚拟机和系统的信息。 for(String name : set){ System.out.println(name + ":" + properties.getProperty(name)); } } public static InetAddress getInetAddress(){ try{ return InetAddress.getLocalHost(); }catch(UnknownHostException e){ System.out.println("unknown host!"); } return null; } public static String getHostIp(InetAddress netAddress){ if(null == netAddress){ return null; } String ip = netAddress.getHostAddress(); //get the ip address return ip; } public static String getHostName(InetAddress netAddress){ if(null == netAddress){ return null; } String name = netAddress.getHostName(); //get the host address return name; }
2、获取访问者IP
/** * 获取访问者IP * <p/> * 在一般情况下使用Request.getRemoteAddr()即可,但是经过nginx等反向代理软件后,这个方法会失效。 * <p/> * 本方法先从Header中获取X-Real-IP,如果不存在再从X-Forwarded-For获得第一个IP(用,分割), * 如果还不存在则调用Request .getRemoteAddr()。 * * @param request * @return */ public static String getIp(HttpServletRequest request) { String ip = request.getHeader("X-Real-IP"); if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) { return ip; } ip = request.getHeader("X-Forwarded-For"); if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) { // 多次反向代理后会有多个IP值,第一个为真实IP。 int index = ip.indexOf(','); if (index != -1) { return ip.substring(0, index); } else { return ip; } } else { return request.getRemoteAddr(); } }
0 0
- 获取客户端IP地址
- 获取IP地址!
- 获取IP地址
- 获取IP地址
- 获取对方ip地址
- 获取 IP 地址
- 获取客户端ip地址
- asp获取ip地址
- php获取ip 地址
- 获取IP地址
- 获取ip地址
- 获取IP地址
- PHP获取IP地址
- 获取ip地址函数
- 获取ip地址函数
- 获取IP地址
- Java获取IP地址
- 获取IP地址
- Mac环境cocoapods安装
- PullToRefresh使用详解
- opencv与emgucv的参数传递
- Python 实现双向链表(图解)
- C# 项目第一天
- 获取IP地址
- Umeng微信、朋友圈分享
- 微软算法100道题-----输入一个表示整数的字符串,把该字符串转换成整数并输出
- 数据库 之 范式浅析
- 层次分析法入门笔记
- c++实现读写文件
- win7安装Ubuntu14.04双系统
- Linux安装JDK及环境变量配置
- teradata sql优化之qualify子句优化