java IP地址工具类,java IP地址获取,java获取客户端IP地址
================================
©Copyright 蕃薯耀 2019年1月11日
http://fanshuyao.iteye.com/
import java.net.Inet4Address; import java.net.InetAddress; import java.net.NetworkInterface; import java.util.Enumeration; import javax.servlet.http.HttpServletRequest; public class IpUtils { private static final String[] HEADERS = { "X-Forwarded-For", "Proxy-Client-IP", "WL-Proxy-Client-IP", "HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED", "HTTP_X_CLUSTER_CLIENT_IP", "HTTP_CLIENT_IP", "HTTP_FORWARDED_FOR", "HTTP_FORWARDED", "HTTP_VIA", "REMOTE_ADDR", "X-Real-IP" }; /** * 判断ip是否为空,空返回true * @param ip * @return */ public static boolean isEmptyIp(final String ip){ return (ip == null || ip.length() == 0 || ip.trim().equals("") || "unknown".equalsIgnoreCase(ip)); } /** * 判断ip是否不为空,不为空返回true * @param ip * @return */ public static boolean isNotEmptyIp(final String ip){ return !isEmptyIp(ip); } /*** * 获取客户端ip地址(可以穿透代理) * @param request HttpServletRequest * @return */ public static String getIpAddress(HttpServletRequest request) { String ip = ""; for (String header : HEADERS) { ip = request.getHeader(header); if(isNotEmptyIp(ip)) { break; } } if(isEmptyIp(ip)){ ip = request.getRemoteAddr(); } if(isNotEmptyIp(ip) && ip.contains(",")){ ip = ip.split(",")[0]; } if("0:0:0:0:0:0:0:1".equals(ip)){ ip = "127.0.0.1"; } return ip; } /** * 获取本机的局域网ip地址,兼容Linux * @return String * @throws Exception */ public String getLocalHostIP() throws Exception{ Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces(); String localHostAddress = ""; while(allNetInterfaces.hasMoreElements()){ NetworkInterface networkInterface = allNetInterfaces.nextElement(); Enumeration<InetAddress> address = networkInterface.getInetAddresses(); while(address.hasMoreElements()){ InetAddress inetAddress = address.nextElement(); if(inetAddress != null && inetAddress instanceof Inet4Address){ localHostAddress = inetAddress.getHostAddress(); } } } return localHostAddress; } }
================================
©Copyright 蕃薯耀 2019年1月11日
http://fanshuyao.iteye.com/
相关推荐
通过该工具类可以获得请求的IP地址,适用于后台管理系统的信息统计。
获取客户端提交申请时的ip地址,例如用于微信支付的获取客户端ip,根据配置不不同,有可能ipv4或ipv6,当服务器在自己电脑上,做测试是,可以使用127.0.0.1替代localhost
利用淘宝IP地址库实现的利用IP获取用户所在地工具类
获取本地IP地址,获取本地Host名称,获取Linux下的IP地址,获取用户真实IP地址,get/post请求 相应的工具类
java获取IP地址的工具类,使用时传入HttpServletRequest request类型的参数即可。使用例子 public static void logPageError(HttpServletRequest request){IpUtils.getIpAddr(request))}
IpUtil工具类--通过request获取IP,通过IP获取地址(需要联网,调用淘宝的IP库)。使用场景:在网站开发记录用户增删改查日志的时候,往往需要记录操作人的IP地址,来准确的生成操作日志记录等
java根据ip获取国家、地区名称,附带ip库 java根据ip获取国家、地区名称,附带ip库
通过IP地址查询所在省市,基于qqwry.dat(可通过百度下载最新qqwry.dat文件来更新)。 代码已经简化过,直接调用静态方法即可返回地区信息(传入IP为参数)。 使用时只需要把唯一工具类:IpLocationTool.java(无...
java常用工具类,获取IP地址及端口
工具类-获取访问ip地址工具类,自用留存
java中ping命令ping工具类(循环ping) java ping ip ping命令 ping工具类 支持linux和windows等所有平台 Ping是Windows下的一个命令 在Unix和Linux下也有这个命令。 ping也属于一个通信协议,是TCP/IP协议的一部分 ...
Java根据IP获取地址工具类 String rspStr = HttpUtils.doGet(IP_URL, "ip=" + ip + "&json=true", Constants.GBK); System.out.println("rspStr -- " + rspStr); if (StringUtils.isEmpty(rspStr)) { return ...
得到机器的MAC,硬盘序列序列号和IP地址 public static void main(String[] args) ...{ String osName = System.getProperty("os.name"); StringBuffer systemPathBuff = new StringBuffer(""); if (osName.index...
Java 读取服务器IP工具类,该工具用于读取项目运行的ip地址,内网IP,请求IP,开箱即用。
通过java 验证机器与某ip地址能否联通的工具类。配置ip地址就可以测试使用了。
1.通过Servlet的HttpRequest对象获取Ip地址。 2.通过Reactive的ServerHttpRequest对象获取Ip地址。
提供把ip地址转换为长整型,把长整型转换为ip地址 。提供一个一般的地址(如192.168.1.250),以及掩码的长度(如24),得到网络地址(如192.168.1.0)。获取掩码位数。根据起始地址,终止地址,掩码长度,获取可使用的...
ip工具类(用于判断IP是否在网段内,给定网段判断IP的范围)
内容概要:要工具类将接口请求解析以获取请求的IP地址信息。内含Ip2regionSearcher工具类的使用方式,可以通过使用Ip2regionSearcher将获取到的IP地址信息,进一步解析得到IP属地信息。 适应人群:有需要获取请求IP...