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 7512 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 267 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Patrice dans tuto

Bonjour

je cherche a activer mod_headers chez 1and1, impossible de mettre mes jpg en cache, auriez vous une piste ? merci !

Publié par web agency cms Typo3 dans tuto

De nombreux articles sur le web parlent des CMS (Content Management System) et tentent de lister les meilleurs d'entres-eux.
Mais très souvent, sauf quelques rares libres blancs, ces article...

Publié par hilflo dans tuto

Pour Romaingineer, essaye d'aller voir dans le fichier functions.php dans ton theme, tu dois avoir des functions wp_enqueue_style ou wp_enqueue_script, c'est la que tu pourras faire des modifs

Publié par Fobec dans tuto

Bonjour,
est-ce que l'ecart entre 2 mesures est important ?
Un serveur web est loin d'une horloge suisse ;-) En fonction de la charge du serveur, de la mise en cache et du contenu du scr...

Publié par Axel dans java

le resultat de la fonction getMacAddress() est de type String,
ainsi pour afficher l'adresse MAC dans une JLabel

String macAddress=NetworkHardware.getMacAddress();
label.setText(macAd...