Dig es un comando que permite realizar consultas a servidores DNS para obtener información relacionada con este servicio. Esta herramienta puede usarse desde dispositivos Linux (Unix) y también desde Mac OS.
Este comando permite hacer cualquier consulta DNS, siendo las más comunes los registros tipo A (direcciones IP), TXT (texto), MX (servidores de correo) y los propios servidores de nombres.
Si necesitas realizar una consulta de este tipo deberás ejecutar lo siguiente:
dig ejemplo.com
Así, obtendrás algo similar a esto:
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 <<>>
ejemplo.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62559
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;ejemplo.com. IN A
;; ANSWER SECTION:
ejemplo.com. 666 IN A xxx.xxx.xxx.xxx
;; AUTHORITY SECTION:
ejemplo.com. 155962 IN NS ns1.ejemplo.com.
ejemplo.com. 155962 IN NS ns2.ejemplo.com.
;; ADDITIONAL SECTION:
ns1.fabulous.com. 6844 IN A xxx.xxx.xxx.xxx
ns2.fabulous.com. 6844 IN A xxx.xxx.xxx.xxx
;; Query time: 78 msec
;; SERVER: xxx.xxx.xxx.xxx#53(xxx.xxx.xxx.xxx)
;; WHEN: Tue Mar 19 18:27:53 2013
;; MSG SIZE rcvd: 170
En caso de que solo quieras obtener la IP del dominio, basta con que indiques:
dig ejemplo.com A +noall +answer
Para los servidores de correo:
dig ejemplo.com MX +noall +answer
Si lo que quieres es obtener los servidores de nombre:
dig ejemplo.com NS +noall +answer
Para obtener todas las opciones anteriores:
dig ejemplo.com ANY +noall +answer
En caso de que quieras trazar la ruta de la respuesta a la consulta:
dig ejemplo.com +trace
En el caso de la consulta general (dig ejemplo.com), se obtendrá un resultado más largo y puede que difícil de interpretar.
Así, las dos primeras líneas que forman el primer bloque devuelven la versión y las opciones que se han establecido, en este caso en printcmd:
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 <<>>
ejemplo.com
;; global options: printcmd
Las siguientes líneas proporcionan detalles técnicos acerca de la respuesta del servidor DNS. Esta parte puede desactivarse añadiendo +[no]comments, pero al hacerlo también se desactivarán las cabeceras de información.
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62559
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 2, ADDITIONAL: 2
El siguiente bloque muestra la consulta que hemos realizado. Por defecto todas las consultas se hacen para una dirección de internet (A).
;; QUESTION SECTION:
;ejemplo.com. IN A
Seguidamente, encontraremos la respuesta a la consulta ejecutada. En un resultado real aparecerá la IP relacionada con el dominio, en lugar de xxx.xxx.xxx.xxx
;; ANSWER SECTION:
ejemplo.com. 666 IN A xxx.xxx.xxx.xxx
En el bloque final incluye las estadísticas de la consulta que se ha efectuado. También pueden desactivarse indicando +[no]stats.
;; Query time: 78 msec
;; SERVER: xxx.xxx.xxx.xxx#53(xxx.xxx.xxx.xxx)
;; WHEN: Tue Mar 19 18:27:53 2013
;; MSG SIZE rcvd: 170