dig Command: Tutorial & Examples

Querying DNS Servers

The dig command, short for Domain Information Groper, is a versatile tool for interrogating DNS name servers. It performs DNS lookups and displays the answers that are returned from the name server that was queried. The dig command is useful for network troubleshooting and for educational purposes.

It's an essential tool for any system administrator, especially if you're dealing with issues related to DNS resolution.

How dig Works

The dig command sends a DNS query to the server specified (or to the default system DNS server if unspecified), and then displays the server's response. It can be used to retrieve all types of DNS records, including A (Address), MX ( Mail Exchange), and TXT (Text) records.

One of the strengths of the dig command is its ability to give verbose and detailed output, which is helpful when debugging DNS issues or understanding the DNS process.

Why the dig Command is Important

Understanding DNS queries and responses is crucial for troubleshooting network or website problems. The dig command is a powerful tool in this regard, as it provides rich and detailed information about DNS operations.

Additionally, dig can be used to verify the health and functionality of your DNS server(s). If you're experiencing a network failure, dig can help identify if the issue is DNS-related.

Common Problems Solved by the dig Command

Problems related to DNS resolution are common in networked systems. dig can help diagnose these issues. For example, if a website is not loading, you can use dig to determine if the issue lies in DNS resolution.

In case of a misconfigured DNS server or incorrect DNS records, dig can provide insights into what's wrong by displaying the raw DNS response from the server.

dig Command Examples

Let's look at some examples of how to use the dig command.

dig www.example.com

This command retrieves the DNS records for the domain www.example.com. The output will show the A record (IP address) for this domain.

dig MX www.example.com

This command retrieves the MX (Mail Exchange) records for the domain www.example.com. The output will list the mail servers and their priorities.

dig +short www.example.com

This command provides a concise version of the DNS query response, showing only the most essential information (usually the A record).

Expected Output

A typical output of a dig command looks like this:

; <<>> DiG 9.11.3-1ubuntu1.13-Ubuntu <<>> www.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53836
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;www.example.com.       IN  A

;; ANSWER SECTION:
www.example.com.    14399   IN  A   93.184.216.34

;; Query time: 28 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Mar 22 14:18:55 UTC 2019
;; MSG SIZE  rcvd: 59

In this example, you can see that www.example.com resolves to the IP address 93.184.216.34.

Except where otherwise noted, content on this site is licensed under a CC BY-SA 4.0 license CC BY SA