Heim >Java >javaLernprogramm >Java ruft die IP-Adressen aller Netzwerkkarten auf diesem Rechner ab (ipv4)

Java ruft die IP-Adressen aller Netzwerkkarten auf diesem Rechner ab (ipv4)

巴扎黑
巴扎黑Original
2016-12-28 17:55:052415Durchsuche

/**
* 获取机器所有网卡的IP(ipv4)
* @return
*/
public static List<String> getLocalIP() {
List<String> ipList = new ArrayList<String>();
InetAddress ip = null;
try {
Enumeration<NetworkInterface> netInterfaces = (Enumeration<NetworkInterface>) NetworkInterface.getNetworkInterfaces();
while (netInterfaces.hasMoreElements()) {
NetworkInterface ni = (NetworkInterface) netInterfaces.nextElement();
// 遍历所有ip
Enumeration<InetAddress> ips = ni.getInetAddresses();
while (ips.hasMoreElements()) {
ip = (InetAddress) ips.nextElement();
if (null == ip || "".equals(ip)) {
continue;
}
String sIP = ip.getHostAddress();
if(sIP == null || sIP.indexOf(":") > -1) {
continue;
}
ipList.add(sIP);
System.out.println(sIP);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return ipList;
}


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn