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 renvoyée par ce serveur DNS à l'aide de l'adresse IP et du 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 renvoyée par ce serveur DNS à l'aide de l'adresse IP et du nom d'hôte?
Réponses:
Jetez un œil à InetAddressla getHostAddress()méthode.
InetAddress address = InetAddress.getByName("www.example.com");
System.out.println(address.getHostAddress());
InetAddressdevrait obtenir l'adresse DNS résolue lorsque vous le demandez getHostAddress(). Je ne sais pas si vous pouvez le forcer à utiliser un serveur DNS spécifique .
Vous pouvez le faire comme ceci:
for(InetAddress addr : InetAddress.getAllByName("stackoverflow.com"))
System.out.println(addr.getHostAddress());
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());
Comme suggéré par tout ce qui précède, vous pouvez utiliser
InetAddress.getByName("hostName")mais cela peut vous donner une adresse IP en cache, lisez la documentation java pour la même chose. Si vous souhaitez obtenir une adresse IP à partir du DNS, vous pouvez utiliser:
InetAddress[] ipAddress = DNSNameService.lookupAllHostAddr("hostName");
dig <hostname>dans une ligne de commande?