`

获取IP地址或客户端IP地址

 
阅读更多

获取ip地址本机的:

	@Test
	public  void testIp() throws Exception{
		Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces();
		InetAddress ip = null;
		while (allNetInterfaces.hasMoreElements()) {
			NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
			Enumeration addresses = netInterface.getInetAddresses();
			while (addresses.hasMoreElements()) {
				ip = (InetAddress) addresses.nextElement();
				if (ip != null && ip instanceof Inet4Address) {
					if(!ip.getHostAddress().equals("127.0.0.1")){
						AppServerInfo appServerInfo=new AppServerInfo();
						appServerInfo.setIp(ip.getHostAddress());
						appServerInfo.setCurrentDatetime(new Date(System.currentTimeMillis()));
						appServerInfo.setServerName(System.getProperty("user.name"));
						System.out.println(Utils.getGson().toJson(appServerInfo));
					}
				}
			}
		}
	}

 

 

获取客户端IP地址

public void getRealIp(HttpServletRequest request){
		
		//可是,如果通过了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP值,
		//究竟哪个才是真正的用户端的真实IP呢?答案是取 X-Forwarded-For中第一个非unknown的有效IP字符串。
		//如: X-Forwarded-For:192.168.1.110, 192.168.1.120, 192.168.1.130, 192.168.1.100 用户真实IP为: 192.168.1.110
		
	    String ip = null;
	    
	    if(ip == null || ip.length() == 0 || "unknown" .equalsIgnoreCase(ip)){
	    	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();
	    }
	}

 

 

 

 

分享到:
评论

相关推荐

    java IP地址工具类,java IP地址获取,java获取客户端IP地址

    在Java编程中,获取IP地址是一项常见的任务,特别是在网络编程和服务器开发中。这个"java IP地址工具类"是为了解决这个问题而设计的。它提供了便捷的方法来获取和处理IP地址,尤其对于获取客户端IP地址在Web应用中至...

    java 获取客户端ip mac地址

    #### 三、在Linux环境下获取IP地址 在Linux环境中,可以通过`InetAddress`类来获取主机的IP地址。但是需要注意的是,对于多网卡的情况,需要遍历所有网络接口来找到正确的IP地址。 **示例代码**: ```java public...

    Java获取客户端真实IP地址

    这可以避免获取到的是内部网络中其他代理服务器的IP,而确保获取到的是最前端的客户端IP。 以下是一个改进后的Java方法,能够处理多级反向代理的情况: ```java public String getIpAddr(HttpServletRequest ...

    JS获取客户端IP地址、MAC和主机名的7个方法汇总

    ### JS获取客户端IP地址、MAC和主机名的7个方法详解 #### 一、使用JS获取客户端IP的方法 ##### 方法一:使用ActiveX获取IP(仅适用于IE浏览器) 这种方法依赖于`ActiveXObject`来实现,因此只能在允许运行ActiveX...

    java获取客户端ip及mac地址

    ### Java 获取客户端 IP 地址 在 Web 开发中,获取客户端 IP 地址是一项非常重要的功能,尤其是在需要记录用户活动、实现地理位置定位或者进行安全验证等场景下。Java 提供了多种方式来获取客户端的 IP 地址,其中...

    asp.net_web_获取客户端IP和MAC地址

    例如,在企业内部网络中,可以配置DHCP服务器,当客户端获取IP地址时,服务器会记录其MAC地址。在这种情况下,你需要访问DHCP服务器的日志或者数据库来获取这些信息,而不是直接从HTTP请求中获取。 在`Web.Config`...

    .net获取客户端主机名和ip地址

    4. **Page.Request.UserHostAddress**:返回客户端IP地址。 ```csharp string clientIPAddress = Page.Request.UserHostAddress; ``` 这些方法简单易用,适用于大多数情况下的客户端信息获取。 #### 二、使用...

    JS简单获取客户端IP地址的方法【调用搜狐接口】

    本文实例讲述了JS简单获取客户端IP地址的方法。分享给大家供大家参考,具体如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>使用搜狐接口获取客户端IP地址</...

    获取客户端IP地址-vs c#

    获取客户端IP地址 vs c#/获取客户端IP地址 vs c#

    通过客户端IP地址获取客户端MAC地址

    通过客户端的ip地址获取mac地址,本文文件本人测过,可用,请大家放心下载,绝不骗积分

    获取客户端IP地址所需Jar包

    2. 如果`X-Forwarded-For`为空或不可靠,再使用`getRemoteAddr()`获取IP地址。 3. 如果Web服务部署在AWS等云环境中,还可能需要检查`CloudFront-Viewer-Address`等特定的头部信息。 4. 在处理这些IP信息时,应考虑...

    javascript获取客户端网卡MAC地址和IP地址和计算机名

    javascript获取客户端网卡MAC地址和IP地址和计算机名

    故障处理-用户无法获取IP地址.pdf

    在处理网络故障时,用户无法获取IP地址是一个常见问题,尤其涉及到DHCP(Dynamic Host Configuration Protocol)客户端无法从DHCP服务器获取IP地址的情况。DHCP协议使得网络设备能够动态地从服务器获取IP地址配置...

    JS 使用搜狐接口获取客户端IP地址

    在JavaScript(JS)中,...首先,我们需要了解搜狐提供的获取IP地址的API接口。这个接口通常是HTTP或HTTPS请求,通过发送一个简单的GET请求就能返回用户的IP地址。例如,搜狐的IP接口可能是这样的: ```javascript ...

    golang 获取客户端IP

    集成各种获取方式,获取正确的IP

    java非常强的获取客户端真实IP的两种方法

    当请求经过反向代理时,这个字段会包含原始客户端IP地址的信息。以下是一个简单的示例代码: ```java public String getRealIP(HttpServletRequest request) { String ip = request.getHeader("x-forwarded-for");...

    以IP来获取客户端电脑名称(一句代码实现)

    公司的域环境内,要求获取客户端的电脑名称,其实程序原开始,只是要求 获取客户端IP地址 后来演变成要求显示客户端的电脑名称。作为开发者,只有不停地实现客户的要求。 其实既然IP获取到了,那可以轻易以IP来获取...

    JS获取客户端IP地址及MAC地址(转)

    在JavaScript中,获取客户端IP地址和MAC地址是一个相对复杂的过程,因为JavaScript的浏览器安全限制不允许直接访问客户端的MAC地址。然而,我们可以通过一些间接的方法来获取客户端的IP地址。在这个场景下,`...

    web端不限制浏览器获取客户端MAC+IP地址

    web端项目通过浏览器访问的项目获取客户端mac地址及ip地址,进行登录权限校验; web端通过浏览器访问的项目增加权限; 本次项目由于对数据安全性要求较为严格,所以增加了用户在登录时对于客户端电脑的ip地址和mac...

    适合于mac 10.15之后系统使用的认证后获取IP地址的锐捷客户端

    3. **IP地址获取**:根据网络策略,客户端在认证成功后自动获取IP地址,这可能通过DHCP或静态IP配置实现。 4. **安全保护**:具备安全机制,防止非法侵入和数据泄露,确保用户在网络中的信息安全。 5. **用户体验**...

Global site tag (gtag.js) - Google Analytics