Publié le 18/10/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Trouver l'adresse IP d'un domaine ou d'un poste de travail

Toutes les communications réseaux utilisent l'adresse ip du périphérique pour communiquer. Voyons comment implémenter la recherche d'adresse ip avec JAVA de la même manière que la commande nslookup sous Windows et la commande dig sous UNIX.

Interroger un serveur DNS

La commande nslookup sous Windows et dig sous UNIX interroge un serveur DNS (Domain Name System). Dans l'exemple, la class NSLookup utilise la fonction InetAddress.getByName pour afficher :
- l'IP d'un serveur web à partir de son nom de domaine,
- l'IP du poste 'leserveur' sur un réseau local à partir de son alias.
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;
 
/**
 * Trouver l'adresse IP à partir d'un domaine ou d'un nom de poste
 */
class NSLookup {
 
    public static String IPAddress(String hostname) {
        InetAddress inetHost = null;
        try {
            inetHost = InetAddress.getByName(hostname);
        } catch (UnknownHostException ex) {
            Logger.getLogger(NSLookup.class.getName()).log(Level.SEVERE, null, ex);
        }
        if (inetHost == null) {
            return "Invalid hostname: "+hostname;
        } else {
            return inetHost.getHostAddress();
        }
    }
 
    /**
     * Exemple 
     */
    public static void main(String[] args) {
        //Trouver l'IP du serveur web google.com
        System.out.println("IP du serveur 'www.google.com': " + NSLookup.IPAddress("google.com"));
        //Connaitre l'IP du poste 'leserveur' sur un réseau local
        System.out.println("IP du poste 'leserveur' sur le LAN: " + NSLookup.IPAddress("leserveur"));
    }
}

Résultats de la résolution DNS

L'execution du code JAVA ci-dessous produit le résultat suivant:
IP du serveur 'www.google.com': 173.194.45.67
IP du poste 'leserveur' sur le LAN: 192.168.2.150


A partir des adresses ip retournées par le serveur DNS, il est possible de lancer des tests par exemple avec un ping ou démarrarer une communication avec un serveur avec un socket.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
18/10/2010
Visualisation
vu 5834 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 261 articles
|BIO_PSEUDO|
Commentaires récents

Publié par hako dans CMS

merci bien mon ami dd

Publié par fobec dans tuto

Effectivement, l'interface du site a evolue. Le lien de telechargement est ici: http://www.rainforestnet.com/download/sample.zip

Publié par fobec dans logiciel

MAJ: mise en cache du FAI et optimisation du script de Geolocalisation.

Publié par l'indik dans java

Sauf que si l'objet n'est plus utilisé, quand tu fait ton new , la mémoire sera automatiquement libéré si cela est nécessaire. Donc l'utilisation de System.gc() n'es...

Publié par stux dans java

Génial.. C'est exactement ce que je cherchais.