Support / KnowledgeBase

 
Search the KnowledgeBase Search

Understanding the dig command

  • Applies to: All Service Types

  • Difficulty: Medium

  • Time needed: 5 minutes

  • Tools needed: None

 

The command dig is a tool for querying DNS nameservers for information about host addresses, mail exchanges, nameservers, and related information. This tool can be used from any Linux (Unix) or Macintosh OS X operating system. The most typical use of dig is to simply query a single host.

Run the command:

 dig mt-example.com

View the Output:

; <<>> DiG 9.4.1-P1 <<>> mt-example.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25550
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mt-example.com.			IN	A

;; ANSWER SECTION:
mt-example.com.		28626	IN	A	64.13.192.208

;; Query time: 4 msec
;; SERVER: 64.207.129.21#53(64.207.129.21)
;; WHEN: Thu Aug  7 16:49:35 2008
;; MSG SIZE  rcvd: 48

Understanding the Results

The opening section of dig’s output tells us a little about itself (version 9.4.1) and the global options that are set (in this case, printcmd):

; <<>> DiG 9.4.1-P1 <<>> mt-example.com
;; global options:  printcmd

Here, dig tells us some technical details about the answer received from the DNS server. This section of the output can be toggled using the +[no]comments option—but beware that disabling the comments also turns off many section headers:

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25550
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

In the question section, dig reminds us of our query. The default query is for an Internet address (A):

;; QUESTION SECTION:
;mt-example.com.			IN	A

Now we have our anwser, the address of mt-example.com is 204.152.184.88:

;; ANSWER SECTION:
mt-example.com.		28626	IN	A	64.13.192.208

The final section of the default output contains statistics about the query; it can be toggled with the +[no]stats option:

;; Query time: 4 msec
;; SERVER: 64.207.129.21#53(64.207.129.21)
;; WHEN: Thu Aug  7 16:49:35 2008
;; MSG SIZE  rcvd: 48

A quick way to just get the answer only is to run the following command:

dig mt-example.com +short

What can I find using the dig command?

dig will let you perform any valid DNS query, the most common of which are A (the IP address), TXT (text annotations), MX (mail exchanges), and NS nameservers.

Use the following command to get the addresses for mt-example.com:

 dig mt-example.com A +noall +answer

Use the following command to get a list of all the mailservers for mt-example.com:

 dig mt-example.com MX +noall +answer

Use the following command to get a list of authoritative DNS servers for mt-example.com:

 dig mt-example.com NS +noall +answer

Use the following command to get a list of all the above in one set of results:

dig mt-example.com ANY +noall +answer 

Use the following command to query using a specific nameserver:

dig @ns1.mediatemple.net mt-example.com 

Use the following to trace the path taken:

 dig mt-example.com +trace

 

Revisions:

08-07-2008: Article Creation



User Comments

No visitor comments posted. Post a comment

Fields marked with an asterisk(*) are required. Comment on this article

Fill out the form below if you would like to comment on this article.
 
 
 

(code is not case-sensitive)
 
Submit
 
 

Continue