Debido a lo anterior me dí a la tarea de localizar o desarrollar un código que fuera capaz de obtener la información de la configuración de red actual para obtener los datos que necesito, lo comparto con ustedes.
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(" Nombre = " + ni.getName());
System.out.println(" Nombre a mostrar= " + ni.getDisplayName());
System.out.println(" Está activa = " + ni.isUp());
System.out.println(" Soporte para multicast = " + ni.supportsMulticast());
System.out.println(" Es loopback = " + ni.isLoopback());
System.out.println(" Es virtual = " + ni.isVirtual());
System.out.println(" Es punto a punto = " + ni.isPointToPoint());
System.out.println(" Dirección MAC = " + ni.getHardwareAddress());
System.out.println(" MTU = " + ni.getMTU());
System.out.println("\nLista de direcciones de interfaz:");
List<InterfaceAddress> list = ni.getInterfaceAddresses();
Iterator<InterfaceAddress> it = list.iterator();
while (it.hasNext()) {
InterfaceAddress ia = it.next();
System.out.println(" Dirección = " + ia.getAddress());
System.out.println(" Broadcast = " + ia.getBroadcast());
System.out.println(" Longitud de prefijo de red = " + ia.getNetworkPrefixLength());
System.out.println("");
}
}
}
Nombre = eth2
Nombre a mostrar= Intel(R) 82562V-2 10/100 Network Connection - Minipuerto del administrador de paquetes
Está activa = true
Soporte para multicast = true
Es loopback = false
Es virtual = false
Es punto a punto = false
Dirección MAC = XXXXXXXXX
MTU = 1500
Lista de direcciones de interfaz:
Dirección = /XXX.XXX.XXX.XXX
Broadcast = /XXX.XXX.XXX.XXX
Longitud de prefijo de red = 24
Alguna duda o algo qué decir? Deja tu comentario. Saludox.
genial, sabes como se puede hacer para obtener el nombre que tiene la placa de red en windos? por ejemplo, en lugar de que muestre eth2 muestre coneccion de area local 2, ya que sobre eso necesito ejecutar una serie de comando bash
ResponderBorrargracias saludos!
Uno hace lo que puede...
ResponderBorrar