martes, 6 de abril de 2010

dig Linux DNS consultas

El comando dig (Domain Information Groper) permite realizar consultas a los servidores DNS, por lo que es muy útil para comprobar si el DNS está correctamente configurado en nuestra máquina. Permite comprobar tanto el mapeo de nombres a IPs como el mapeo inverso de IPs a nombres, pero sólo sirve para Internet, ya que no mira en /etc/hosts (sólo utiliza /etc/resolv.conf). Su sintaxis es:

$ dig [@servidor_dns] [opciones] [tipo]

* [@servidor_dns]: nombre o IP del servidor DNS al que queremos dirigir nuestra consulta, por ejemplo @dns1.nrc.ca. Si no especificamos este parámetro, utilizará los servidores DNS listados en /etc/resolv.conf
* : nombre de dominio cuya IP queremos resolver.
* [tipo]: tipo de consulta. Valores posibles:
o A: IP del servidor que aloja al dominio (por defecto).
o NS: servidores DNS.
o MX: servidores de correo.
o ANY: todas las anteriores.
o AAAA: IP en IPv6 (si tiene).

Veamos cómo utilizar dig:

* mapeo de nombres a IPs
o si probamos con localhost no lo encuentra: no mira en /etc/hosts, consulta a los DNS del ISP y allí no la conocen:

$ dig localhost
;; ANSWER: 0

o lo mismo ocurre con la propia máquina, pc350, o con cualquier otra máquina de la red.
o si probamos con telefonica.net consulta a los DNS del ISP y la encuentra:

$ dig telefonica.net
;; ANSWER SECTION:
telefonica.net. 10356 IN A 213.4.130.95

* mapeo inverso de IPs a nombres
o si probamos con 127.0.0.1 consulta a los DNS del ISP y encuentra localhost:

$ dig -x 127.0.0.1
;; ANSWER SECTION:
1.0.0.127.in-addr.arpa. 0 IN PTR localhost.

o si probamos con una dirección de la red local, 192.168.0.5, consulta a los DNS del ISP y no lo encuentra:

$ dig -x 192.168.0.5
;; ANSWER: 0

o si probamos con una IP de Internet, como 213.4.130.95, consulta los DNS del ISP y la encuentra:

$ dig -x 213.4.130.95
;; ANSWER SECTION:
95.130.4.213.in-addr.arpa. 60809 IN PTR www.telefonica.net.

* servidores DNS de un dominio: para saber dónde están los servidores DNS de un dominio (por ejemplo, telefonica.net) haremos:

$ dig telefonica.net. ns
;; ANSWER SECTION:
telefonica.net. 28800 IN NS dns2.terra.es.
telefonica.net. 28800 IN NS dns1.terra.es.
;; ADDITIONAL SECTION:
dns2.terra.es. 28714 IN A 213.4.141.1
dns1.terra.es. 28714 IN A 213.4.132.1

No hay comentarios: