1 /** 2 * 获取Linux下的IP地址 3 * 4 * @return IP地址 5 * @throws SocketException 6 */ 7 public static String getLinuxLocalIp() throws SocketException { 8 String ip = ""; 9 try { 10 for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); 11 en.hasMoreElements();) { 12 NetworkInterface intf = en.nextElement(); 13 String name = intf.getName(); 14 if (!name.contains("docker") && !name.contains("lo")) { 15 for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); 16 enumIpAddr.hasMoreElements();) { 17 InetAddress inetAddress = enumIpAddr.nextElement(); 18 if (!inetAddress.isLoopbackAddress()) { 19 String ipaddress = inetAddress.getHostAddress().toString(); 20 if (!ipaddress.contains("::") && !ipaddress.contains("0:0:") 21 && !ipaddress.contains("fe80")) { 22 ip = ipaddress; 23 } 24 } 25 } 26 } 27 } 28 } catch (SocketException ex) { 29 System.out.println("获取ip地址异常"); 30 ex.printStackTrace(); 31 } 32 System.out.println("IP:" + ip); 33 return ip; 34 }