使用 java.net.InterfaceAddress 獲取網卡信息

fwe3 9年前發布 | 2K 次閱讀 Java 建站,域名,推廣,虛擬主機

import java.net.InterfaceAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.List;

public class NetworkParameterDemo { public static void main(String[] args) throws Exception { Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); while (en.hasMoreElements()) { NetworkInterface ni = en.nextElement(); printParameter(ni);

}

}

public static void printParameter(NetworkInterface ni) throws SocketException { System.out.println(\" Name = \" + ni.getName()); System.out.println(\" Display Name = \" + ni.getDisplayName()); System.out.println(\" Is up = \" + ni.isUp()); System.out.println(\" Support multicast = \" + ni.supportsMulticast()); System.out.println(\" Is loopback = \" + ni.isLoopback()); System.out.println(\" Is virtual = \" + ni.isVirtual()); System.out.println(\" Is point to point = \" + ni.isPointToPoint()); System.out.println(\" Hardware address = \" + ni.getHardwareAddress()); System.out.println(\" MTU = \" + ni.getMTU());

System.out.println(\"\\nList of Interface Addresses:\");
List<InterfaceAddress> list = ni.getInterfaceAddresses();
Iterator<InterfaceAddress> it = list.iterator();

while (it.hasNext()) {
  InterfaceAddress ia = it.next();
  System.out.println(\" Address = \" + ia.getAddress());
  System.out.println(\" Broadcast = \" + ia.getBroadcast());
  System.out.println(\" Network prefix length = \" + ia.getNetworkPrefixLength());
  System.out.println(\"\");
}

} }</pre>

 本文由用戶 fwe3 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!