首页 > 代码库 > java 获取本机ip地址

java 获取本机ip地址

/**     * 取当前系统站点本地地址 linux下 和 window下可用     *     * @return     */    public static String getLocalIP() {        String sIP = "";        InetAddress ip = null;        try {            // 如果是Windows操作系统            if (isWindowsOS()) {                ip = InetAddress.getLocalHost();            }            // 如果是Linux操作系统            else {                boolean bFindIP = false;                Enumeration<NetworkInterface> netInterfaces = NetworkInterface                        .getNetworkInterfaces();                while (netInterfaces.hasMoreElements()) {                    if (bFindIP) {                        break;                    }                    NetworkInterface ni = netInterfaces.nextElement();                    // ----------特定情况,可以考虑用ni.getName判断                    // 遍历所有ip                    Enumeration<InetAddress> ips = ni.getInetAddresses();                    while (ips.hasMoreElements()) {                        ip = ips.nextElement();                        if (ip.isSiteLocalAddress() && !ip.isLoopbackAddress() // 127.开头的都是lookback地址                                && ip.getHostAddress().indexOf(":") == -1) {                            bFindIP = true;                            break;                        }                    }                }            }        } catch (Exception e) {            e.printStackTrace();        }        if (null != ip) {            sIP = ip.getHostAddress();        }        return sIP;    }    public static boolean isWindowsOS() {        if ("//".equals(File.separator)) {            return true;        } else {            return false;        }    }

 

java 获取本机ip地址