`

JAVA 获取本地IP地址

    博客分类:
  • Java
 
阅读更多
/**
 * 
 * 
 * @author: Fadezed
 * @version: 2016年9月7日 下午2:27:39   
 * @fileName InetUtils.java
 * @packageNamecom.ane.util
 */
public class InetUtils {
	/**
	 * 获得主机IP
	 * 
	 * @return String
	 */
	public static boolean isWindowsOS() {
		boolean isWindowsOS = false;
		String osName = System.getProperty("os.name");
		if (osName.toLowerCase().indexOf("windows") > -1) {
			isWindowsOS = true;
		}
		return isWindowsOS;
	}

	/**
	 * 获取本机ip地址,并自动区分Windows还是linux操作系统
	 * 
	 * @return String
	 */
	public static String getLocalIP() {
		String sIP = "";
		InetAddress ip = null;
		try {
			// 如果是Windows操作系统
			if (isWindowsOS()) {
				ip = InetAddress.getLocalHost();
			}else {
				// 如果是Linux操作系统
				boolean bFindIP = false;
				Enumeration<NetworkInterface> netInterfaces = (Enumeration<NetworkInterface>) NetworkInterface.getNetworkInterfaces();
				while (netInterfaces.hasMoreElements()) {
					if (bFindIP) {
						break;
					}
					NetworkInterface ni = (NetworkInterface) netInterfaces
							.nextElement();
					Enumeration<InetAddress> ips = ni.getInetAddresses();
					while (ips.hasMoreElements()) {
						ip = (InetAddress) ips.nextElement();
						if (ip.isSiteLocalAddress() && !ip.isLoopbackAddress() // 127.开头的都是lookback地址
								&& ip.getHostAddress().indexOf(":") == -1) {
							bFindIP = true;
							break;
						}
					}

				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}

		if (null != ip) {
			sIP = ip.getHostAddress();
		}
		return sIP;
	}

	public static void main(String[] args) throws UnknownHostException {
		System.out.println(isWindowsOS());
		System.out.println(getLocalIP());
	}
}

 

0
0
分享到:
评论

相关推荐

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

    1. **获取本地IP地址**:在多网络接口的设备上,`IpUtils`可能提供方法来获取一个或所有本地IP地址。这通常需要遍历`NetworkInterface`的所有实例,并从中筛选出IPv4或IPv6的有效地址。 2. **获取客户端IP地址**:...

    java 获取客户端ip mac地址

    这段代码首先尝试获取本地主机的IP地址,然后遍历所有网络接口来查找主网卡(例如`eth0`)的IP地址。 ### 结论 在实际开发中,获取客户端的IP地址是常见的需求,而获取MAC地址则较为罕见且可能存在一定的法律风险...

    获取本地IP地址的小程序

    这篇教程将围绕"获取本地IP地址的小程序"展开,通过Java语言实现这一功能,并提供相关的源代码供学习交流。 首先,我们要了解什么是IP地址。IP地址(Internet Protocol Address)是互联网上的每个设备独一无二的...

    纯JAVA实现修改本地IP(swing界面版)

    总结起来,"纯JAVA实现修改本地IP(swing界面版)"项目涉及到了Java编程、Swing GUI设计、IP地址处理、文件I/O、事件处理、多线程以及错误处理等多个核心知识点。通过这个项目,开发者不仅可以提升Java编程技能,也能...

    java 获取计算机名与IP地址

    下面将详细介绍如何使用Java获取计算机名和IP地址。 首先,我们来看如何获取计算机名。计算机名通常指的是主机在网络中的标识符,可以通过`java.lang`包中的`InetAddress`类来获取。以下是一个简单的示例: ```...

    JAVA发送邮件和获取ip地址

    1. 获取本地IP地址: ```java import java.net.InetAddress; import java.net.UnknownHostException; public class IPAddress { public static void printLocalAddresses() { try { InetAddress....

    getlocalIp_获取本地IP工具java_服务器_

    在Java编程环境中,获取本地IP地址是一个常见的需求,特别是在服务器端开发中,这可能涉及到网络通信、服务定位等多种场景。以下是一些关于如何在Java中获取本地IP的关键知识点: 1. **网络接口(Network Interface...

    Java获取客户端IP及Mac地址(同网段).rar

    在Controller类获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用...

    java编程实现获取服务器IP地址及MAC地址的方法

    以下是一个简单的示例方法,用于获取本地服务器的IP地址: ```java public static String getLocalIP() { String sIP = ""; InetAddress ip = null; try { boolean bFindIP = false; Enumeration...

    JAVA获取别人的ip地址

    ### JAVA获取别人IP地址的方法与实现 #### 一、引言 在开发网络应用程序时,经常需要获取客户端的IP地址。这不仅可以用于日志记录、统计分析,还可以用于某些安全控制措施,例如限制某些IP访问服务等。本文将详细...

    java获取linux服务器上的IP操作

    在本文中,我们将详细介绍Java获取Linux服务器上的IP操作,包括Linux服务器上的网络接口、回环接口、获取IP地址的方法等。 Linux服务器上的网络接口 在Linux服务器上,网络接口是用来发送和接受数据包的基本设备...

    idea,java获取ip地址

    当我们构建一个基于Servlet的Web应用程序时,有时需要获取访问用户的真实IP地址,这在处理用户请求、日志记录或者实现地理位置相关的功能时尤为关键。 Servlet是Java服务器端的一种组件,它扩展了Web服务器的功能,...

    java获取ip地址返回地区

    总结,Java获取IP地址并返回国家、地区和城市名称的过程主要包括:获取IP地址、加载QQwry数据库、查询IP信息以及解析查询结果。通过这个过程,开发者可以为网络应用程序增加更丰富的地理定位功能。不过需要注意,这...

    用Java来获取访问者真实的IP地址

    ### 使用Java获取访问者真实IP地址 在现代Web开发中,获取客户端的真实IP地址是非常重要的。这不仅有助于网站统计分析,还可以用于安全控制、地域限制等功能。然而,在使用如Apache、Squid等反向代理服务器的情况下...

    Java中获取IP地址,主机名称,网卡地址

    在 Java 中,我们可以使用 InetAddress 类的 getLocalHost() 方法来获取本地主机的 IP 地址。这个方法将返回一个 InetAddress 对象,其中包含了主机的 IP 地址。 ```java InetAddress myIPaddress = InetAddress....

    JAVA多线程本地IP端口扫描器

    本项目"JAVA多线程本地IP端口扫描器"是利用Java的强大功能来实现的一种实用工具,它可以帮助我们快速地检测本地计算机的开放端口,这对于网络安全检查、系统调试和性能优化都有重要意义。下面我们将深入探讨这个项目...

    java获取本机IP地址

    例如,192.168.1.1就是常见的本地IP地址。而公网IP是互联网上设备的唯一标识,通常由ISP(Internet Service Provider)分配,可以通过公网访问互联网。 获取本机IP地址的方法: 1. 使用`InetAddress`类:`...

    获取系统IP地址浏览器java

    本文将深入探讨如何在Java中获取本地主机的IP地址,并结合浏览器环境进行详细阐述。 首先,让我们理解IP地址的概念。IP(Internet Protocol)地址是互联网上的每个设备(如计算机、手机或服务器)的唯一标识符。它...

    基于Java实现获取本地IP地址和主机名

    "基于Java实现获取本地IP地址和主机名" 在Java编程中,获取本地IP地址和主机名是一个常见的需求。本文将详细介绍基于Java实现获取本地IP地址和主机名的两种方式,并对每种方式进行了详细的解释和示例代码。 方式一...

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

    ### Java获取客户端真实IP的两种方法详解 #### 一、问题背景 在Web开发中,经常需要获取客户端的真实IP地址来进行一系列的操作,比如统计访问来源、进行地理定位、安全防护等。然而,在实际应用场景中,客户端请求...

Global site tag (gtag.js) - Google Analytics