`
kingmxj
  • 浏览: 177899 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

工具类 -- 获取ip

    博客分类:
  • Java
 
阅读更多
    /**
     * 获取到客户端IP地址
     * 
     * @author fengpeng E-mail: fengpeng@lietou.com
     * @version CreateTime:2012-3-19 下午05:40:29
     * @param request
     * @return
     */
    public static String getIpAddr(HttpServletRequest request)
    {
        String ip = null;
        
        ip = request.getHeader("Cdn-Src-Ip");
        if(ip != null && !"".equals(ip))
        {
            return ip;
        }
        
        ip = request.getHeader("x-forwarded-for");
        if(ip != null && ip.indexOf(',') > 0)
        {
            String[] tmp = ip.split("[,]");
            for(int i = 0; tmp != null && i < tmp.length; i++)
            {
                if(tmp[i] != null && tmp[i].length() > 0 && !"unknown".equalsIgnoreCase(tmp[i]))
                {
                    ip = tmp[i];
                    break;
                }
            }
        }
        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();
        }
        return ip;
    }
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics