Obtener nombre de host en Java

Muhammad Zeeshan 12 octubre 2023
  1. Use InetAddress para obtener HostName en Java
  2. Demostrar el uso de la clase InetAddress para obtener HostName en Java
Obtener nombre de host en Java

En este tutorial, veremos cómo obtener la dirección IP y el nombre de host mediante la API de Java.

Use InetAddress para obtener HostName en Java

El paquete java.net contiene la clase InetAddress que se ocupa de la dirección IP y el nombre de host de la máquina actual.

Al recopilar la dirección IP del sistema con la función getLocalHost() de la misma clase, podemos obtener el nombre del sistema para una computadora con Windows usando getHostName() de la clase InetAddress en el paquete java.net.

Si el administrador de seguridad no autoriza obtener la dirección del localhost, getHostName() entrega la representación textual de la dirección IP.

Los métodos getLocalHost() y getByName (String host) de la clase InetAddress tratan con hosts locales y remotos, respectivamente.

Sintaxis:

InetAddress inetadd = InetAddress.getLocalHost();

Esta función creará una instancia de InetAddress para el servidor local inetadd, donde se ejecuta el programa Java. Como resultado, se devuelve la dirección del localhost.

Esto se hace recuperando el nombre del host del sistema y transformándolo en InetAddress.

Demostrar el uso de la clase InetAddress para obtener HostName en Java

En primer lugar, importe la siguiente biblioteca.

java.net.InetAddress

Le mostraremos cómo recuperar el nombre de host en Java usando un ejemplo simple.

InetAddress inetadd = InetAddress.getLocalHost();

Usaremos el método InetAddress para crear una instancia de InetAddress para el servidor local llamado inetadd, donde opera el programa Java.

String name = inetadd.getHostName();

Obtendremos el hostname usando el método getHostName() y lo guardaremos en una variable de tipo cadena llamada name.

String address = inetadd.getHostAddress();

Después de eso, con la ayuda del método getHostAddress(), obtendremos la dirección del host y la guardaremos en una variable de tipo cadena llamada address. Si esto no puede resolver el nombre de host local o del sitio en una dirección, se lanzará UnknownHostException.

Código fuente:

import java.net.InetAddress;
import java.net.UnknownHostException;
public class HostnameExample {
  public static void main(String[] args) {
    try {
      InetAddress inetadd = InetAddress.getLocalHost();
      String name = inetadd.getHostName();
      String address = inetadd.getHostAddress();
      System.out.println("HostName is : " + name);
      System.out.println("Host Address is: " + address);
    } catch (UnknownHostException u) {
    }
  }
}

Producción :

$javac HostnameExample.java
$java -Xmx128M -Xms16M HostnameExample
HostName is : f97aedb6192a
Host Address is: 127.0.0.2
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn