Java 获取客服端ip地址

时间:2022-03-09 13:18:48

Java 获取客服端ip地址

/**
* <html>
* <body>
* <P> Copyright 1994 JsonInternational</p>
* <p> All rights reserved.</p>
* <p> Created on 19941115</p>
* <p> Created by Jason</p>
* </body>
* </html>
*/
package cn.ucaner.alpaca.framework.utils.ip; import javax.servlet.http.HttpServletRequest; /**
* @Package:cn.ucaner.framework.utils
* @ClassName:IPAddress
* @Description: <p> ip地址</p>
* @Author: - Jason
* @CreatTime:2017年8月30日 下午2:12:19
* @Modify By:
* @ModifyTime:
* @Modify marker:
* @version V1.0
*/
public class IPAddress { /**
* 获取客户端ip地址
* @param request
* @return
*/
public static String getClientIpAddress(HttpServletRequest request) {
String ip = request.getHeader("X-Forwarded-For");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("X-Real-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Cdn-Src-Ip");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
if (ip.indexOf(",") > -1) {
ip = ip.substring(0, ip.indexOf(","));
}
return ip;
}
}