Tengo la dirección IP del servidor DNS y un nombre de host.
Usando Java, ¿cómo puedo encontrar la dirección IP del nombre de host tal como lo devuelve ese servidor DNS usando la dirección IP y el nombre de host?
Echa un vistazo a InetAddress
y el getHostAddress()
método.
InetAddress address = InetAddress.getByName("www.example.com");
System.out.println(address.getHostAddress());
-
Digamos que si tengo una dirección IP dns 10.37.221.152 y un nombre de host dice “www.student.com”, entonces, ¿cómo puedo encontrar la dirección IP?
– Materia oscura
03/04/2013 a las 13:31
-
@Materia oscura:
InetAddress
debe obtener la dirección resuelta de DNS cuando solicitegetHostAddress()
. No estoy seguro de si puedes forzarlo a usar un específico Sin embargo, servidor DNS.– el sonriente
03/04/2013 a las 13:36
-
Entonces, idealmente, tiene que resolverse por sí mismo sin que el programador especifique explícitamente la dirección del servidor DNS, ¿verdad?
– Materia oscura
3 abr 2013 a las 13:37
-
@DarkMatter Sí. Creo que usa cualquier servidor DNS que esté configurado en la computadora.
– el sonriente
03/04/2013 a las 13:39
Puedes hacerlo así:
for(InetAddress addr : InetAddress.getAllByName("stackoverflow.com"))
System.out.println(addr.getHostAddress());
Puede usar InetAddress para esto. Pruebe el siguiente código,
InetAddress address = InetAddress.getByName("www.yahoo.com");
System.out.println(address.getHostAddress());
System.out.println(address.getHostName());
Rudra
Como se sugiere por todo lo anterior, puede utilizar
InetAddress.getByName("hostName")
pero esto puede darle una IP en caché, lea la documentación de Java para el mismo. Si desea obtener una IP de DNS, puede usar:
InetAddress[] ipAddress = DNSNameService.lookupAllHostAddr("hostName");
dig <hostname>
en una línea de comandos?– ceejayoz
03/04/2013 a las 13:12
Cómo hacer lo mismo en el código Java y dónde debo usar la dirección IP y el nombre de host del servidor DNS.
– Materia oscura
03/04/2013 a las 13:15
Otra consulta necesitaremos proporcionar la dirección IP del servidor DNS en cualquier caso o intentará encontrarla de forma predeterminada. Estoy un poco confundido aquí si necesitamos usar solo el nombre de host o el nombre de host + la dirección IP del servidor DNS también?
– Materia oscura
3 de abril de 2013 a las 13:16
La búsqueda de la dirección usando el nombre no es complicada. Siempre y cuando solo use la resolución predeterminada del sistema. Entonces: ¿realmente necesita usar la dirección del servidor DNS?
– A.H.
03/04/2013 a las 13:30
Tengo la misma pregunta: ¿Realmente necesito la dirección del servidor DNS o resolverá la dirección de forma predeterminada? Por cierto, estoy usando un servidor AIX Unix.
– Materia oscura
03/04/2013 a las 13:35