Java 获取IP/MAC地址等网络信息的方法
1.引入Java包
import java.net.InetAddress;
import java.net.NetworkInterface;
2.1获取IP地址的函数
public static String getLocalIP() throws UnknownHostException{
InetAddress ia = InetAddress.getLocalHost();
int pos = ia.toString().indexOf("/");
String ip = ia.toString().substring(pos+1);
return ip;
}
2.2获取MAC地址的函数
public static String getLocalMac() throws SocketException, UnknownHostException{
InetAddress ia = InetAddress.getLocalHost();
byte[] mac = NetworkInterface.getByInetAddress(ia).getHardwareAddress();
logger.info("Length is: " + mac.length);
StringBuffer sb = new StringBuffer("");
for(int i=0; i<mac.length; i++){
if(i!=0){
sb.append("-");
}
int temp = mac[i]&0xff;
String str = Integer.toHexString(temp);
if(str.length()==1){
sb.append("0"+str);
}else{
sb.append(str);
}
}
return sb.toString();
}