Java - Récupérer le nom et l'adresse IP local du serveur/client

Pour obtenir et afficher en java l'adresse local d'une machine, la classe java.net.InetAddress dispose d'une méthode InetAddress.getLocalHost() qui retourne le nom de la machine et son adresse IP en cours de traitement dans la classe InetAddress.

Dans cet exemple, on récupère le nom et l'adresse de la machine dans un réseau wifi local fournie par le serveur DHCP du routeur:

import java.net.InetAddress;
import java.net.UnknownHostException;

public class AdresseClient {

public static void main(String[] args) {

String nomHote ;
String adresseIPLocale ;

try{
InetAddress inetadr = InetAddress.getLocalHost();
//nom de machine
nomHote = (String) inetadr.getHostName();
System.out.println("Nom de la machine = "+nomHote );
//adresse ip sur le réseau
adresseIPLocale = (String) inetadr.getHostAddress();
System.out.println("Adresse IP locale = "+adresseIPLocale );

} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
Sortie:

Nom de la machine = VAIO-VAIO
Adresse IP locale = 192.168.1.101
Références:
Oracle Documentation: Méthode InetAddress.getLocalHost
Récupérer l'adresse du serveur web en Java
Socket TCP: Créer un chat Client/Serveur en Java