La herramienta dig
(domain information groper) se utiliza para interrogar servidores DNS. Realiza lookups DNS y muestra la respuesta retornada por el servidor consultado. Los administradores de redes y DNS utilizamos dig para diagnosticar y resolver problemas debido a su flexibilidad, facilidad de uso y claridad de la salida. Otras herramientas como por ejemplo nslookup
tienden a proveer menor funcionalidad que dig.
Una instalación mínima de CentOS no incluye muchos paquetes útiles, por lo tanto es necesario instalarlos a medida que los necesitamos. En particular, la herramienta dig viene en el paquete bind-utils
, el cual contiene una colección de utilidades para consultas DNS.
Para instalar dig
en CentOS ejecutamos:
# yum install bind-utils
Luego podemos verificar el correcto funcionamiento, por ejemplo consultando a un servidor DNS de google (8.8.8.8
ó 8.8.4.4
) cuales son las direcciones IP de los servidores de G+ (Google Plus):
# dig @8.8.8.8 plus.google.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @8.8.8.8 plus.google.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48021 ;; flags: qr rd ra; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;plus.google.com. IN A ;; ANSWER SECTION: plus.google.com. 115 IN A 74.125.234.72 plus.google.com. 115 IN A 74.125.234.68 plus.google.com. 115 IN A 74.125.234.73 plus.google.com. 115 IN A 74.125.234.66 plus.google.com. 115 IN A 74.125.234.70 plus.google.com. 115 IN A 74.125.234.69 plus.google.com. 115 IN A 74.125.234.64 plus.google.com. 115 IN A 74.125.234.71 plus.google.com. 115 IN A 74.125.234.67 plus.google.com. 115 IN A 74.125.234.78 plus.google.com. 115 IN A 74.125.234.65 ;; Query time: 462 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Thu Oct 3 10:18:28 2013 ;; MSG SIZE rcvd: 209
Dig permite realizar toda clase de consultas para obtener cualquier tipo de registro DNS de cualquier dominio. Debido a que es una herramienta que posee muchas opciones y provee una gran funcionalidad, recomiendo leer su manual una vez instalado bind-utils
:
man dig
Pero como soy bueno les dejo algunos ejemplos :D
Salida sintética
Para obtener una salida reducida, existe la opción +short
:
# dig @8.8.8.8 plus.google.com +short 74.125.234.68 74.125.234.65 74.125.234.66 74.125.234.70 74.125.234.71 74.125.234.64 74.125.234.72 74.125.234.69 74.125.234.78 74.125.234.73 74.125.234.67
Obtener los servidores de correo de un dominio
Se debe consultar por el registro MX
(Mail Exchange) para obtener los agentes de transferencia de mensajes (servidores de correo) para el dominio, junto con sus prioridades:
# dig @8.8.8.8 google.com MX +short 40 alt3.aspmx.l.google.com. 50 alt4.aspmx.l.google.com. 20 alt1.aspmx.l.google.com. 10 aspmx.l.google.com. 30 alt2.aspmx.l.google.com.
Información de la zona
El registro SOA
contiene información autorizada de la zona (en lo que se refiere a verosimilitud), incluyendo el servidor de nombres primario, correo electrónico del administrador del dominio, número de serie del dominio y diferentes timers relacionados al refresco de la zona:
# dig @8.8.8.8 flickr.com SOA ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @8.8.8.8 flickr.com SOA ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27700 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;flickr.com. IN SOA ;; ANSWER SECTION: flickr.com. 883 IN SOA hidden-master.yahoo.com. hostmaster.yahoo-inc.com. 2013100201 1800 900 1209600 600 ;; Query time: 386 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Thu Oct 3 10:57:30 2013 ;; MSG SIZE rcvd: 105
Obtener sólo la sección de la respuesta
Utilizar las opciones +noall
y +answer
para obtener sólo la sección de la respuesta:
# dig @8.8.4.4 www.flickr.com +noall +answer ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @8.8.4.4 www.flickr.com +noall +answer ; (1 server found) ;; global options: +cmd www.flickr.com. 165 IN CNAME flickr-panda-police.a00.yahoodns.net. flickr-panda-police.a00.yahoodns.net. 165 IN CNAME geoycpi-uno-deluxe.gycpi.b.yahoodns.net. geoycpi-uno-deluxe.gycpi.b.yahoodns.net. 165 IN CNAME geoycpi-uno.gycpi.b.yahoodns.net. geoycpi-uno.gycpi.b.yahoodns.net. 165 IN CNAME any-ycpi-uno.aycpi.b.yahoodns.net. any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 216.115.110.119 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 98.136.145.152 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 206.190.57.60 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 206.190.57.61 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 98.136.145.154 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 216.115.110.118 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 98.136.145.153 any-ycpi-uno.aycpi.b.yahoodns.net. 165 IN A 98.136.145.155
Consulta reversa (PTR)
Las consultas reversas (qué nombre de host posee cierta dirección IP) se realizan con -x
:
# dig @8.8.8.8 -x 8.8.8.8 +short google-public-dns-a.google.com.
Obtener todos los registros disponibles
Para obtener todos los registros disponibles de un cierto dominio, consultar por el registro ANY
:
# dig @8.8.8.8 google.com ANY ;; Truncated, retrying in TCP mode. ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @8.8.8.8 google.com ANY ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45581 ;; flags: qr rd ra; QUERY: 1, ANSWER: 24, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;google.com. IN ANY ;; ANSWER SECTION: google.com. 300 IN A 74.125.234.78 google.com. 300 IN A 74.125.234.65 google.com. 300 IN A 74.125.234.70 google.com. 300 IN A 74.125.234.71 google.com. 300 IN A 74.125.234.72 google.com. 300 IN A 74.125.234.68 google.com. 300 IN A 74.125.234.66 google.com. 300 IN A 74.125.234.67 google.com. 300 IN A 74.125.234.73 google.com. 300 IN A 74.125.234.69 google.com. 300 IN A 74.125.234.64 google.com. 300 IN AAAA 2800:3f0:4001:802::1007 google.com. 21600 IN NS ns2.google.com. google.com. 21600 IN TYPE257 \# 19 0005697373756573796D616E7465632E636F6D google.com. 21600 IN NS ns4.google.com. google.com. 3600 IN TXT "v=spf1 include:_spf.google.com ip4:216.73.93.70/31 ip4:216.73.93.72/31 ~all" google.com. 21600 IN NS ns1.google.com. google.com. 600 IN MX 30 alt2.aspmx.l.google.com. google.com. 600 IN MX 50 alt4.aspmx.l.google.com. google.com. 21600 IN NS ns3.google.com. google.com. 600 IN MX 20 alt1.aspmx.l.google.com. google.com. 21600 IN SOA ns1.google.com. dns-admin.google.com. 2013082900 7200 1800 1209600 300 google.com. 600 IN MX 10 aspmx.l.google.com. google.com. 600 IN MX 40 alt3.aspmx.l.google.com. ;; Query time: 342 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Thu Oct 3 10:40:30 2013 ;; MSG SIZE rcvd: 577
Espero que les haya gustado!!!
Tal vez pueda interesarte