java獲取機器名及所有網絡卡IP
阿新 • • 發佈:2019-01-30
獲取機器名:
public String getLocalHostName() {
String hostName;
try {
InetAddress addr = InetAddress.getLocalHost();
hostName = addr.getHostName();
} catch (Exception ex) {
hostName = "";
}
return hostName;
}
獲取IP(多個網絡卡時獲取了多個IP):
public List<String> getNetworkAddress() { List<String> result = new ArrayList<String>(); Enumeration<NetworkInterface> netInterfaces; try { netInterfaces = NetworkInterface.getNetworkInterfaces(); InetAddress ip; while (netInterfaces.hasMoreElements()) { NetworkInterface ni = netInterfaces.nextElement(); Enumeration<InetAddress> addresses=ni.getInetAddresses(); while(addresses.hasMoreElements()){ ip = addresses.nextElement(); if (!ip.isLoopbackAddress() && ip.getHostAddress().indexOf(':') == -1) { result.add(ip.getHostAddress()); } } } return result; } catch (Exception e) { return null; } }