Как перечислить IP-адреса всех включенных сетевых карт от Java?

Некоторые из них будут работать java-api только в JDK 1.6 и выше (один jdk из методов был добавлен в jdk этом выпуске).

List addrList = new ArrayList();
for(Enumeration eni = NetworkInterface.getNetworkInterfaces(); eni.hasMoreElements(); ) {
   final NetworkInterface ifc = eni.nextElement();
   if(ifc.isUp()) {
      for(Enumeration ena = ifc.getInetAddresses(); ena.hasMoreElements(); ) {
        addrList.add(ena.nextElement());
      }
   }
}

До 1.6 это network было немного сложнее - до jdk этого момента isUp() не поддерживается.

FWIW: Javadocs обратите ip-address внимание, что это правильный .java подход для получения всех java-libraries IP-адресов для узла:

ПРИМЕЧАНИЕ: можно java-api использовать getNetworkInterfaces() + getInetAddresses() получить oraclejdk все IP-адреса для этого узел

java

networking

ip-address

2022-09-19T16:07:13+00:00