网络信息
使用getNetworkInterfaces方法即可得到当前机器上所有的网络接口。
import Java.net.Inet4Address; import Java.net.InetAddress; import Java.net.NetworkInterface; import Java.util.Enumeration; public class NetworkInterfaceTest { public static void main(String[] args) throws Exception { // 获得本机的所有网络接口 Enumeration<NetworkInterface> nifs = NetworkInterface.getNetworkInterfaces(); while (nifs.hasMoreElements()) { NetworkInterface nif = nifs.nextElement(); // 获得与该网络接口绑定的 IP 地址,一般只有一个 Enumeration<InetAddress> addresses = nif.getInetAddresses(); while (addresses.hasMoreElements()) { InetAddress addr = addresses.nextElement(); if (addr instanceof Inet4Address) { // 只关心 IPv4 地址 System.out.println("网卡接口名称:" + nif.getName()); System.out.println("网卡接口地址:" + addr.getHostAddress()); System.out.println(); } } } } }
鲲鹏上执行结果:
[root@centos7 test]# Java NetworkInterfaceTest 网卡接口名称:br-4932c6ca6ce6 网卡接口地址:192.168.48.1 网卡接口名称:docker0 网卡接口地址:172.17.0.1 网卡接口名称:eth1 网卡接口地址:122.0.0.154 网卡接口名称:eth0 网卡接口地址:11.0.0.154 网卡接口名称:lo 网卡接口地址:127.0.0.1
父主题: Java