java 获取本机的IP地址
方法一:这种方式有一定的局限性,在Linux下的执行结果是:本机的IP = xxx/127.0.1.1 (其中xxx是你的计算机名)
public void getLocalIPAddress() { try { InetAddress inetAddress = InetAddress.getLocalHost(); String localIP = inetAddress.getHostAddress().trim(); System.out.println(localIP); } catch (UnknownHostException e) { e.printStackTrace(); } }
方法二:
private InetAddress getLocalIPAddress() { InetAddress ip = null; try { Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces(); while (allNetInterfaces.hasMoreElements()) { NetworkInterface netInterface = allNetInterfaces.nextElement(); Enumeration<InetAddress> addresses = netInterface.getInetAddresses(); while (addresses.hasMoreElements()) { ip = addresses.nextElement(); if (ip != null && ip instanceof Inet4Address) { return ip.getLocalHost(); } } } } catch (Exception e) { e.printStackTrace(); } return ip; }