Java获取本地IP方法详解编程语言

获取本地服务器IP经常会出现127.0.0.1,0:0:0:0:0:0:0:1,fe80:0:0:0:960:74bd:e1a0:e5b9%11 这些情况,以下代码可解决此问题

public static void main(String[] args) { 
        try { 
            Enumeration<NetworkInterface> enumeration = NetworkInterface 
                    .getNetworkInterfaces(); 
            while (enumeration.hasMoreElements()) { 
                NetworkInterface networkInterface = enumeration.nextElement(); 
                if (networkInterface.isUp()) { 
                    Enumeration<InetAddress> addressEnumeration = networkInterface 
                            .getInetAddresses(); 
                    while (addressEnumeration.hasMoreElements()) { 
                        String ip = addressEnumeration.nextElement() 
                                .getHostAddress(); 
                        final String REGX_IP = "((25[0-5]|2[0-4]//d|1//d{2}|[1-9]//d|//d)//.){3}(25[0-5]|2[0-4]//d|1//d{2}|[1-9]//d|//d)"; 
                        if (ip.matches(REGX_IP) && !ip.equals("127.0.0.1")) { 
                            System.out.println(ip); 
                        } 
  
                    } 
                } 
            } 
        } catch (Exception e) { 
            log.error("获取本机ip出现异常,异常信息为:" + e.getMessage()); 
        } 
    }

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/10510.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论