`

获取远程主机IP工具类

    博客分类:
  • java
阅读更多
/**
 * 网络工具类
 */
public class NetHelper {
	/**
	 * 获取远程主机IP
	 * @param request
	 * @return
	 */
	public static String getRemoteAddress(HttpServletRequest request) {
		String forwards = request.getHeader("x-forwarded-for");
		if (forwards == null || forwards.trim().length() == 0 || "unknown".equalsIgnoreCase(forwards)) {
			forwards = request.getHeader("Proxy-Client-IP");
		}
		if (forwards == null || forwards.trim().length() == 0 || "unknown".equalsIgnoreCase(forwards)) {
			forwards = request.getHeader("WL-Proxy-Client-IP");
		}
		if (forwards == null || forwards.trim().length() == 0 || "unknown".equalsIgnoreCase(forwards)) {
			forwards = request.getRemoteAddr();
		}
		if (forwards == null || forwards.trim().length() == 0 || "unknown".equalsIgnoreCase(forwards)) {
			forwards = request.getHeader("X-Real-IP");
		}
		if (forwards != null && forwards.trim().length() > 0) {
			String[] ips = forwards.split(",");
			return ips[0];
		}
		return forwards;
	}
}

 

分享到:
评论

相关推荐

    获取远程主机IP 小程序

    以上就是一个基本的Delphi 6程序,用于获取远程主机IP地址的实现流程。在实际开发中,我们还需要考虑错误处理,如DNS查询失败、网络连接问题等。此外,如果你的小程序是一个命令行程序,你可能需要从命令行参数接收...

    如何获取主机名和IP地址

    2. 获取远程主机IP地址 如果你想获取远程主机的IP地址,可以使用`Dns.GetHostAddresses(string)`方法,传入远程主机的域名或IP地址。例如,获取Google的IP地址: ```csharp using System.Net; public class ...

    C#通过IP地址获取主机名称

    总的来说,通过C#的`System.Net.Dns`类,我们可以轻松地实现IP地址到主机名称的转换,这在很多网络编程的场景下都是非常有用的工具。结合提供的教程资源,开发者可以深入学习和实践网络编程的相关技术。

    Java读取远程主机文件

    标题 "Java读取远程主机文件" 涉及的核心知识点主要集中在Java远程操作技术,特别是使用SSH(Secure Shell)协议来实现对远程主机的文件访问。在这个场景中,开发人员可能需要从远程服务器上下载文件或者实时读取...

    获取主机拨号IP地址

    - Java中,可以使用`InetAddress`类获取IP地址: ```java import java.net.InetAddress; InetAddress localHost = InetAddress.getLocalHost(); String ipAddress = localHost.getHostAddress(); ``` 当用户...

    如何获得对方主机IP地址?

    对于熟悉命令行操作的用户,可以利用Windows系统的内置命令“netstat”来获取与当前主机建立连接的远程主机IP地址。首先,打开系统命令行界面,输入“cmd”并按回车键进入MS-DOS环境;然后,在命令提示符下输入...

    GetIP获取IP工具.zip

    "GetIP获取IP工具"是一款小巧实用的控制台应用程序,主要功能是动态获取本地或远程计算机的IP地址。通过C#语言编写,具备良好的可读性和扩展性。开发者可以对源码进行调整,以适应不同的网络环境和特定需求,例如...

    Java网络编程获取主机信息

    可以使用`InetAddress.getByName(String host)`方法,传入远程主机名或IP地址,来获取远程主机的`InetAddress`对象,进而获取其IP地址和其他信息。此外,通过`Socket`类,我们不仅可以与远程主机建立连接,还可以...

    ipchange改IP工具

    【标题】:“ipchange改IP工具” 在信息技术领域,IP(Internet Protocol)地址是网络上设备的唯一标识,用于在互联网上定位和通信。"ipchange"是一个工具,专门用于改变计算机的IP地址,这对于测试、隐私保护或者...

    网络IP地址的查询.rar_IP查询_csharp 远程_ip_ip host name csharp_局域网IP

    在IT行业中,网络IP地址的查询是...无论是局域网内的IP扫描,还是远程IP的主机名获取,都可以通过适当的方法和策略实现。在开发这样的应用时,应考虑性能优化、错误处理和用户体验等因素,确保程序的稳定性和实用性。

    Java 自动获取本机IP、MAC地址

    7. **实际应用**:这种获取本机IP和MAC地址的工具在多种场景下都有用处,例如网络调试、远程连接设置、系统监控等。对于笔记本电脑,由于可能有多个网络接口(如无线和有线),因此可能会获取到多个MAC地址。 通过...

    局域网ip深入扫描工具(Advanced_IP_Scanner)

    - **设备信息获取**:该工具不仅能显示设备的IP和MAC地址,还能获取设备的型号、制造商信息,甚至远程控制开关机。 - **远程访问**:支持远程唤醒(Wake-on-LAN)和关闭计算机功能,便于设备管理。 - **安全...

    C#编写的显示本机IP信息和DNS信息程序和代码

    比如,你可以先使用`Dns`类获取远程主机的`IpHostEntry`,然后从中选取一个IP地址,创建`IPEndPoint`来指定要连接的服务器。在开发网络应用程序时,了解并熟练掌握这些类的用法是非常关键的。 总的来说,`C# IP DNS...

    局域网改IP工具

    "局域网改IP工具"就是这样一个实用的小程序,专为网络管理员设计,旨在简化IP地址的修改过程。 首先,我们来谈谈IP地址。IP地址是Internet Protocol(互联网协议)地址的缩写,是网络中每个设备独一无二的标识。在...

    本地IP扫描工具

    在文件名称列表中,“SQLiteRemoteAccessService”可能是一个服务类的名称,它可能在Android应用中负责处理数据库操作,如SQLite数据库的远程访问。SQLite是Android系统默认的轻量级数据库,用于存储应用程序的数据...

    C# 通过IP或计算机名 获取信息

    在C#中,可以使用`System.Net.NetworkInformation`命名空间中的`Ping`类和`IPAddress`类来获取本地或远程计算机的IP地址。 - 例如,`Ping`类的`Send`方法可以用来向指定计算机发送一个ICMP回显请求,并返回`...

    获取网络IP地址.rar

    - 可以使用网络诊断工具,如`ping`命令,通过回显请求获取远程主机的IP地址。 - 第三方软件,如Advanced IP Scanner,可以扫描局域网内的设备并显示它们的IP地址。 5. **在线服务**: 访问一些在线网站,如"What...

    局域网在线主机查看工具

    通过这款工具,你可以轻松获取局域网内的计算机IP地址,从而实现对网络环境的监控和管理。 在局域网环境中,每个设备都有一个唯一的IP地址,这是它们在网络上进行通信的基础。了解局域网中的在线主机,对于网络管理...

    网口小票机IP设置工具

    "网口小票机IP设置工具"是一款专为这类设备设计的应用程序,帮助用户进行网络配置和功能测试。以下是关于这个工具及其相关知识点的详细说明: 1. **网口小票机**:这种小票机通过以太网接口连接到局域网(LAN),...

    C#实现IP地址查询和手机号码归属地查询

    例如,`System.Net.Dns`类提供了获取远程主机IP地址或者根据IP地址获取主机名的功能。通过`Dns.GetHostEntry`方法,我们可以传入一个IP地址或域名,它会返回一个`IPHostEntry`对象,包含该主机的IP地址列表和主机名...

Global site tag (gtag.js) - Google Analytics