`

获取请求客户端的真实IP地址

 
阅读更多

  /**
  * 获取请求客户端的真实IP地址
  * <功能详细描述>
  * @param request
  * @return [参数说明]
  *
  * @return String [返回类型说明]
  * @exception throws [违例类型] [违例说明]
  * @see [类、类#方法、类#成员]
  */
 public static String getIpAddr(HttpServletRequest request) {    
       String ip = request.getHeader("x-forwarded-for");    
       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;    
 }  

分享到:
评论

相关推荐

    Java获取客户端真实IP地址

    Java获取客户端真实IP地址

    IP地址HTTP请求工具类

    获取本地IP地址,获取本地Host名称,获取Linux下的IP地址,获取用户真实IP地址,get/post请求 相应的工具类

    webService调取IP所在地,以及获得客户端真实IP

    webService调取IP所在地,以及获得客户端真实IP

    Java正确获取客户端真实IP方法整理.docx

    但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。 如果使用了反向代理软件,将http://192.168.1.110:2046/的URL反向代理为http://www.abc.com/的URL时,用request.getRemoteAddr()方法...

    IpUtil工具类--通过request获取IP,通过IP获取地址

    IpUtil工具类--通过request获取IP,通过IP获取地址(需要联网,调用淘宝的IP库)。使用场景:在网站开发记录用户增删改查日志的时候,往往需要记录操作人的IP地址,来准确的生成操作日志记录等

    ASP.NET获取真正的客户端IP地址的6种方法

    要想透过代理服务器取得客户端的真实IP地址,就要使用 Request.ServerVariables(“HTTP_X_FORWARDED_FOR”) 来读取。 不过要注意的事,并不是每个代理服务器都能用 Request.ServerVariables(“HTTP_X_FORWARDED_FOR...

    C#实现获取本地内网(局域网)和外网(公网)IP地址的方法分析

    本文实例讲述了C#实现获取本地内网(局域网)和外网(公网)IP地址的方法。分享给大家供大家参考,具体如下: 1、获取本机的IP地址集合: /// /// 获取本机所有ip地址 /// /// &lt;param name=netType&gt;InterNetwork:...

    JSP 获取真实IP地址的代码

    但是在通过了 Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP。 ...

    Java获取客户端IP

    但是在通过了Apache,Squid等反向代理软件不能获取到客户端的真实IP地址了。  原因:由于在客户端和服务之间增加了中间代理,因此服务器无法直接拿到客户端的IP,服务器端应用也无法直接通过转发请求的地址返回给...

    thinkphp如何获取客户端IP

    thinkphp框架中系统内置了get_client_ip方法用于获取客户端的IP地址,使用示例: $ip = get_client_ip(); 除了thinkphp内置get_client_ip函数外,也可使用下面函数获取客户端IP地址。 $type表示返回类型 0 返回IP...

    在xinetd环境下如何获取客户端IP地址

    xinetd下,服务器程序是以stdin/stdout与客户端通信的,并不是标准的socket,本文就介绍了如何获取的方法。 欢迎访问我的博客 http://clh2.blog.163.com/

    Java中使用HttpRequest获取用户真实IP地址

    主要介绍了Java中使用HttpRequest获取用户真实IP地址,使用本文方法可以避免Apache、Squid、nginx等反向代理软件导致的非真实IP地址,需要的朋友可以参考下

    JSP 获取用户的真实IP两种实现方法详解

    但是在通过了 Apache,Nagix等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP。  ...

    基于Nginx 反向代理获取真实IP的问题详解

    前文Nginx 解决WebApi跨域二次请求以及Vue单页面问题 当中虽然解决了跨域问题带来的二次请求,但也产生了一个新的问题,就是如果需要获取用户IP的时候,获取的IP地址总是本机地址。 二、原因 由于Nginx反向代理后,...

    Python反爬虫机制的主要策略

    通过使用不同的代理IP来发送请求,我们可以隐藏真实的IP地址,从而绕过网站的IP检测。可以购买付费的IP代理服务提供商的服务,或者自行搭建IP代理池,通过爬取免费代理网站或购买廉价代理IP来获取可用的IP地址。 ...

    运维-Nginx代理服务器-方向代理-负载均衡-数据缓存

    我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。...

    JSP实例编程100例

    86、获取用户的真实IP地址 87、获取用户的浏览器信息 88、在客户端进行数据检查 89、在JSP中获取当前绝对路径 90、读取表单中所有参数 91、分行写入数据 92、显示请求URL 93、判断session是否过期 94、参数式查询...

    了解交换机漏洞 如何保护网络核心部分

    地址解析协议(ARP)利用第2层物理MAC地址来映射第3层逻辑IP地址,如果设备知道了 IP地址,但不知道被请求主机的MAC地址,它就会发送ARP请求。ARP请求通常以广播形式发送,以便所有主机都能收到。 恶意黑客可以发送...

    JAP编程学习100例

    86、获取用户的真实IP地址 87、获取用户的浏览器信息 88、在客户端进行数据检查 89、在JSP中获取当前绝对路径 90、读取表单中所有参数 91、分行写入数据 92、显示请求URL 93、判断session是否过期 94、参数式查询...

Global site tag (gtag.js) - Google Analytics