package com.founder.util.ip;

import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;

public class IPUtil{
	/**
	 * 
	 * 功能描述:获取本地真实的IP地址
	 * 
	 * @return
	 */
	public static String getRealIp() {
		String localip = null;// 本地IP,如果没有配置外网IP则返回它
		String netip = null;// 外网IP
		Enumeration<NetworkInterface> netInterfaces = null;
		try {
			netInterfaces = NetworkInterface.getNetworkInterfaces();
		} catch (SocketException e) {
			e.printStackTrace();
		}

		InetAddress ip = null;
		boolean finded = false;// 是否找到外网IP
		while (netInterfaces.hasMoreElements() && !finded) {
			NetworkInterface ni = netInterfaces.nextElement();
			Enumeration<InetAddress> address = ni.getInetAddresses();
			while (address.hasMoreElements()) {
				ip = address.nextElement();
				if (!ip.isSiteLocalAddress() && !ip.isLoopbackAddress() && ip.getHostAddress().indexOf(":") == -1) {// 外网IP
					netip = ip.getHostAddress();
					finded = true;
					break;
				} else if (ip.isSiteLocalAddress() && !ip.isLoopbackAddress() && ip.getHostAddress().indexOf(":") == -1) {// 内网IP
					localip = ip.getHostAddress();
				}
			}
		}
		if (netip != null && !"".equals(netip)) {
			return netip;
		} else {
			return localip;
		}
	}
}
最近下载更多
wjh12345654321  LV14 2021年11月10日
wangdongtai  LV31 2021年9月16日
bzddse  LV1 2020年12月24日
BruceQ  LV14 2020年12月10日
JoeJie  LV6 2020年9月4日
1170239664  LV6 2020年4月7日
zhoumengshun  LV4 2020年4月1日
做自己的太阳  LV11 2019年12月5日
wangminmin  LV1 2019年10月7日
longjueyuyu  LV7 2019年4月24日
最近浏览更多
暂无贡献等级
jahshdhdbdbb 3月18日
暂无贡献等级
WBelong  LV8 2023年12月18日
syzlll 2023年6月13日
暂无贡献等级
wuziayng1232  LV10 2023年5月25日
大王巡山  LV10 2022年11月10日
kkfu123  LV4 2022年10月13日
adminadminsqwqe  LV8 2022年6月10日
rain112  LV31 2022年5月16日
Jeasonchan898  LV2 2022年4月26日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友