获取机器 ip 、mac 地址
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.util.Enumeration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class LocalAddressUtil {
private static Log log = LogFactory.getLog(LocalAddressUtil.class);
public LocalAddressUtil() {
}
public static String getIpAddress() {
try {
Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces();
InetAddress ip = null;
while(true) {
NetworkInterface netInterface;
do {
do {
do {
if (!allNetInterfaces.hasMoreElements()) {
return "";
}
netInterface = (NetworkInterface)allNetInterfaces.nextElement();
} while(netInterface.isLoopback());
} while(netInterface.isVirtual());
} while(!netInterface.isUp());
Enumeration addresses = netInterface.getInetAddresses();
while(addresses.hasMoreElements()) {
ip = (InetAddress)addresses.nextElement();
if (ip != null && ip instanceof Inet4Address) {
return ip.getHostAddress();
}
}
}
} catch (Exception var4) {
var4.printStackTrace();
return "";
}
}
public static String getMacAddress() {
try {
Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces();
Object var1 = null;
StringBuilder sb;
do {
byte[] mac;
do {
NetworkInterface netInterface;
do {
do {
do {
if (!allNetInterfaces.hasMoreElements()) {
return "";
}
netInterface = (NetworkInterface)allNetInterfaces.nextElement();
} while(netInterface.isLoopback());
} while(netInterface.isVirtual());
} while(!netInterface.isUp());
mac = netInterface.getHardwareAddress();
} while(mac == null);
sb = new StringBuilder();
for(int i = 0; i < mac.length; ++i) {
sb.append(String.format("%02X%s", mac[i], i < mac.length - 1 ? "-" : ""));
}
} while(sb.length() <= 0);
return sb.toString();
} catch (Exception var5) {
var5.printStackTrace();
return "";
}
}
}