Programa Java para obtener la dirección IP del sistema en máquinas con Windows y Linux

Dirección IP: una dirección de Protocolo de Internet es una etiqueta numérica asignada a cada dispositivo conectado a una red informática que utiliza el Protocolo de Internet para la comunicación. 

Paquetes utilizados:

  1. io (entrada-salida) : este paquete proporciona entrada y salida del sistema a través de flujos de datos, serialización y el sistema de archivos.
  2. net (red) : este paquete proporciona las clases para implementar aplicaciones de red.
  3. util (utilidad) : contiene el marco de la colección, las clases de colección heredadas, el modelo de eventos, las instalaciones de fecha y hora, la internacionalización y las clases de utilidad miscelánea

Métodos utilizados:

1. obtenerDireccionesInet()

Sintaxis:

public Enumeration getInetAddresses()

Tipo de retorno: Devuelve una Enumeración de InetAddress.

2. obtener direcciones de interfaz()

Sintaxis:

public List getInterfaceAddresses()

Tipo de devolución: devuelve una lista de instancias de java.net.InterfaceAddress.

A continuación se muestra la implementación del enunciado del problema:

Java

// Java Program to Get System IP Address
// in Windows and Linux Machine
import static java.lang.System.out;
 
import java.io.*;
import java.net.*;
import java.util.*;
 
public class gfg {
    public static void main(String args[]) // main method
        throws SocketException
    {
        // fetching network interface
        Enumeration<NetworkInterface> nets
            = NetworkInterface.getNetworkInterfaces();
 
        for (NetworkInterface netint :
             Collections.list(nets))
            displayInterfaceInformation(netint);
    }
 
    // Display Internet Information method
    static void
    displayInterfaceInformation(NetworkInterface netint)
        throws SocketException
    {
        out.printf("Display name: %s\n",
                   netint.getDisplayName());
        out.printf("Name: %s\n", netint.getName());
        Enumeration<InetAddress> inetAddresses
            = netint.getInetAddresses();
        // Output System IP
        for (InetAddress inetAddress :
             Collections.list(inetAddresses)) {
            out.printf("System IP: %s\n", inetAddress);
        }
        out.printf("\n");
    }
}
Producción

Display name: eth0
Name: eth0

Display name: lo
Name: lo
System IP: /127.0.0.1

Salida en Windows: 

Salida en Linux: 

Publicación traducida automáticamente

Artículo escrito por abhishekr0ut y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *