转至 http://www.iteye.com/topic/1124070
只能获取到最外端口的ip,不能够具体到局域网的ip。
- public static String getIpAddr(HttpServletRequest request) {
- String ipAddress = null;
- //ipAddress = request.getRemoteAddr();
- 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 || "unknown".equalsIgnoreCase(ipAddress)) {
- ipAddress = request.getHeader("WL-Proxy-Client-IP");
- }
- if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
- ipAddress = request.getRemoteAddr();
- if(ipAddress.equals("127.0.0.1")){
- //根据网卡取本机配置的IP
- InetAddress inet=null;
- try {
- inet = InetAddress.getLocalHost();
- } catch (UnknownHostException e) {
- e.printStackTrace();
- }
- ipAddress= inet.getHostAddress();
- }
-
- }
-
- //对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割
- if(ipAddress!=null && ipAddress.length()>15){ //"***.***.***.***".length() = 15
- if(ipAddress.indexOf(",")>0){
- ipAddress = ipAddress.substring(0,ipAddress.indexOf(","));
- }
- }
- return ipAddress;
- }
分享到:
相关推荐
### Java获取IP地址知识点解析 在本篇文章中,我们将深入探讨如何使用Java语言来获取IP地址。这是一项在网络编程中非常基础且重要的技能,能够帮助开发者了解客户端或服务器的网络位置信息。以下是对给定文件中的...
总的来说,通过Java获取IP所在地区涉及到网络编程、二进制文件解析以及数据库操作等多个技术点。正确理解和实现这一过程,可以帮助我们在各种应用场景下,如网站访问统计、网络安全分析等,更好地处理与IP地址相关的...
总结,Java获取IP地址并返回国家、地区和城市名称的过程主要包括:获取IP地址、加载QQwry数据库、查询IP信息以及解析查询结果。通过这个过程,开发者可以为网络应用程序增加更丰富的地理定位功能。不过需要注意,这...
java获取IP地址。别人总结的文章,自己备份一下,需要的同学可以参考
### 使用Java获取IP地址 #### 一、引言 在现代网络编程中,获取客户端或服务器的IP地址是一项常见的需求。Java提供了强大的网络编程支持,其中包括了获取IP地址的功能。本文将详细介绍如何利用Java标准库中的`java...
在Java编程语言中,获取IP地址是一项常见的任务,特别是在网络编程和服务器开发中。这个程序虽然界面简单,但核心功能强大,它能够帮助开发者获取指定域名对应的IP地址。以下是关于这个话题的一些详细知识点: 1. *...
总之,通过Java获取IP地址对应的城市代码涉及了数据库查询、网络请求等多个技术点。在实际开发中,我们需要根据项目需求、性能要求和成本考虑选择合适的实现方式。对于大型项目,可能会结合使用本地数据库和服务提供...
在Java Web开发中,获取客户端IP地址是一项常见的需求,但这个过程可能会因网络架构的不同而变得复杂。在没有使用反向代理服务器的情况下,通过HttpServletRequest对象的`getRemoteAddr()`方法可以直接获取到客户端...
当我们构建一个基于Servlet的Web应用程序时,有时需要获取访问用户的真实IP地址,这在处理用户请求、日志记录或者实现地理位置相关的功能时尤为关键。 Servlet是Java服务器端的一种组件,它扩展了Web服务器的功能,...
java获取IP地址的工具类,使用时传入HttpServletRequest request类型的参数即可。使用例子 public static void logPageError(HttpServletRequest request){IpUtils.getIpAddr(request))}
在Java编程中,获取IP地址是一项常见的任务,特别是在网络编程和服务器开发中。这个"java IP地址工具类"是为了解决这个问题而设计的。它提供了便捷的方法来获取和处理IP地址,尤其对于获取客户端IP地址在Web应用中至...
在本文中,我们将详细介绍Java获取Linux服务器上的IP操作,包括Linux服务器上的网络接口、回环接口、获取IP地址的方法等。 Linux服务器上的网络接口 在Linux服务器上,网络接口是用来发送和接受数据包的基本设备...
java 获取ip 工具类 java 获取ip 工具类 java 获取ip 工具类 java 获取ip 工具类 java 获取ip 工具类 java 获取ip 工具类 java 获取ip 工具类 java 获取ip 工具类
在Java编程中,获取IP...Java获取IP地址的方法多样,具体选择哪种取决于你的应用场景。在实际项目中,还需要考虑IPv4与IPv6的兼容性、网络环境的复杂性等因素。理解这些基础知识对于编写健壮的网络应用程序至关重要。
java 获取IP方法工具类 java 获取IP方法工具类java 获取IP方法工具类 java 获取IP方法工具类java 获取IP方法工具类 java 获取IP方法工具类java 获取IP方法工具类 java 获取IP方法工具类java 获取IP方法工具类 java ...
### Java获取客户端真实IP地址详解 在Web开发中,获取客户端的真实IP地址是一个常见的需求,尤其是在需要进行地理位置定位、安全审计、流量统计等场景下。然而,在存在反向代理服务器的环境中,传统的`request....
在Java编程中,发送邮件和获取IP地址是两个常见的任务,尤其在系统集成、通知服务或者数据通信中。下面将详细讲解这两个知识点。 首先,让我们来看看如何使用Java发送邮件。在Java中,我们通常使用JavaMail API来...
java根据ip获取国家、地区名称,附带ip库 java根据ip获取国家、地区名称,附带ip库