92 votes

Résolution de l'adresse IP d'un nom d'hôte

J'ai l'adresse IP du serveur DNS et un nom d'hôte.

En utilisant Java, comment puis-je trouver l'adresse IP du nom d'hôte tel qu'il est renvoyé par ce serveur DNS en utilisant l'adresse IP et le nom d'hôte ?

139voto

thegrinner Points 4638

Jetez un coup d'œil à InetAddress y el getHostAddress() méthode.

InetAddress address = InetAddress.getByName("www.example.com"); 
System.out.println(address.getHostAddress());

32voto

Walery Strauch Points 1315

Vous pouvez le faire comme ça :

for(InetAddress addr : InetAddress.getAllByName("stackoverflow.com"))
    System.out.println(addr.getHostAddress());

9voto

Abhinaba Basu Points 96

Vous pouvez utiliser InetAddress pour cela. Essayez le code ci-dessous,

InetAddress address = InetAddress.getByName("www.yahoo.com");
System.out.println(address.getHostAddress());
System.out.println(address.getHostName());

3voto

daksh Points 11

Comme suggéré par tous ceux qui précèdent, vous pouvez utiliser InetAddress.getByName("hostName") mais cela peut vous donner une adresse IP en cache, lisez la documentation java à ce sujet. Si vous voulez obtenir une IP à partir du DNS, vous pouvez utiliser :

InetAddress[] ipAddress = DNSNameService.lookupAllHostAddr("hostName");

0voto

CrazyGreenHand Points 27

En plus de ce que @daksh a indiqué, vous pouvez désactiver le cache des réponses DNS comme suggéré. ici mais faites attention au moment de la désactivation du cache ainsi qu'à la mise en cache des réponses DNS faites par votre système d'exploitation et par d'autres serveurs DNS, comme suggéré. ici . J'espère que cela vous aidera

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X