Check DNS Record with Dig Command in Linux

Updated: Sep 11

Dig is a powerful Linux command to query DNS info. Today we will review all the basic uses of the dig command.

By default, dig sends the DNS query to name servers listed in the resolver(/etc/resolv.conf) unless it is asked to query a specific name server.

How to use Dig command

We can use dig name + record type + @dns server to query the DNS info from a DNS server. By default, dig performs a lookup for an A record if no type argument is specified.

dig @server name type
  1. server – the IP address or hostname of the name server to query. It is optional and if we don’t provide a server argument then dig uses the name server listed in /etc/resolv.conf.

  2. name – the name of the resource record that is to be looked up.

  3. record type – the type of query requested by dig. For example, it can be an A record, MX record, SOA record or any other types.

Check DNS A record with Dig

The A stands for address and this is the most fundamental type of DNS record. A record is used to point a domain or subdomain to an IP address.

We can use this command to query A record for a domain name. For example:

$ dig 0 IN A

Use Dig to query DNS PTR record

A PTR record is well-known as the reverse version of an A record. We can get the PTR record with this command. This is the PTR record for IP address

$ dig -x

Query DNS MX record with Dig

A DNS 'mail exchange' (MX) record directs email to a mail server. This record can tell us the email server for a domain name. With the following command, we can get the MX record for

$ dig mx  0 IN MX 10  0 IN MX 20  0 IN MX 50  0 IN MX 30  0 IN MX 40

Get DNS records Against a specific DNS server

Many DNS servers are around the world. To specify a name server against which the query will be executed, use the @ (at) symbol followed by the name server IP address or hostname.

$ dig @ 5 IN A

Related Post: