
com.stalary.easydoc.web.Utils Maven / Gradle / Ivy
/**
* @(#)Utils.java, 2018-10-01.
*
* Copyright 2018 Stalary.
*/
package com.stalary.easydoc.web;
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.util.Enumeration;
/**
* Utils
*
* @author lirongqian
* @since 2018/10/01
*/
public class Utils {
public static String getHostIp(){
try{
Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces();
while (allNetInterfaces.hasMoreElements()){
NetworkInterface netInterface = allNetInterfaces.nextElement();
Enumeration addresses = netInterface.getInetAddresses();
while (addresses.hasMoreElements()){
InetAddress ip = addresses.nextElement();
if (ip instanceof Inet4Address
&& !ip.isLoopbackAddress() //loopback地址即本机地址,IPv4的loopback范围是127.0.0.0 ~ 127.255.255.255
&& !ip.getHostAddress().contains(":")){
return ip.getHostAddress();
}
}
}
}catch(Exception e){
e.printStackTrace();
}
return null;
}
}