前情提要:
在项目中,涉及到需要获取用户ip的情况。原本使用的是如下代码,程序本地运行结果是:0:0:0:0:0:0:0:1
String ip = request.getRemoteAddr();
后来修改为如下代码,运行结果为:192.168.253.1
public static String getIpAddress(HttpServletRequest request){
String ipAddress = request.getHeader("x-forwarded-for");
if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
ipAddress = request.getHeader("Proxy-Client-IP");
}
if (ipAddress == null || ipAddress.length() == 0 || "unknow".equalsIgnoreCase(ipAddress)) {
ipAddress = request.getHeader("WL-Proxy-Client-IP");
}
if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
ipA