使用java获取本机ip,过滤掉回环地址127.0.0.1
import java.net.Inet4Address; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.net.UnknownHostException; import java.util.Enumeration; public class TestAddress { public static void main(String[] args) throws UnknownHostException { System.out.println(InetAddress.getLocalHost().getHostAddress()); System.out.println(InetAddress.getLocalHost().getHostName()); System.out.println(InetAddress.getLocalHost().getCanonicalHostName()); System.out.println("================================"); System.out.println(getCurrentIp().getHostAddress()); } public static InetAddress getCurrentIp() { try { Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces(); while (networkInterfaces.hasMoreElements()) { NetworkInterface ni = (NetworkInterface) networkInterfaces.nextElement(); Enumeration<InetAddress> nias = ni.getInetAddresses(); while (nias.hasMoreElements()) { InetAddress ia = (InetAddress) nias.nextElement(); if (!ia.isLinkLocalAddress() && !ia.isLoopbackAddress() && ia instanceof Inet4Address) { return ia; } } } } catch (SocketException e) { System.err.println(e.getStackTrace()); } return null; } }
使用方法:
拷贝文件到机器上,
使用 javac TestAddress.java 编译代码
使用java TestAddress 命令 运行
查看输出
以上前提是安装了java环境