In this article, you will learn how to install the dig command and nslookup command on Linux. These commands are used for network troubleshooting and gathering information about domain names.
Dig, short for Domain Information Gopher, is a DNS lookup utility used for probing DNS servers and troubleshooting problems associated with DNS servers. Due to its ease of use, system administrators rely on the tool to troubleshoot DNS issues.
Nslookup is used for handling DNS lookups and displays crucial information such as MX records, and the IP address associated with a domain name.
Newer Linux system ship both dig and nslookup utilities by default. However, older Linux systems may not. The two come bundled inside the bind-utils package.
Let’s see how we can install DNS troubleshooting utilities in Linux.
On this page:
Installing dig & nslookup in CentOS/RHEL
On Red Hat Linux /CentOS, install dig and nslookup using the dnf command.
# dnf install bind-utils
Upon successful installation, verify the version using the command below.
# dig -v
Installing dig & nslookup on Debian / Ubuntu
On Debian and any of its derivatives including Debian, the installation is done using the apt command.
# apt install dnsutils
Again, to verify the installation, run the command.
# dig -v
Installing dig & nslookup on ArchLinux
For ArchLinux, the command for installing dig and nslookup will be.
# pacman -Sy dnsutils
To check the version of dig installed, run.
# dig -v
Using the dig command
dig command can be used to query a domain name and retrieve information as shown:
# dig fossmint.com
The command displays a host of information such as the version of the dig command utility, the DNS server, and its corresponding IP address.
Sample Output
; <<>> DiG 9.11.3-1ubuntu1.9-Ubuntu <<>> fossmint.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58049 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;fossmint.com. IN A ;; ANSWER SECTION: fossmint.com. 300 IN A 104.27.179.254 fossmint.com. 300 IN A 104.27.171.254 ;; Query time: 6 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: Fri Nov 15 12:33:55 IST 2019 ;; MSG SIZE rcvd: 73
To get more specific and display only the IP of the domain name append the +short argument as shown:
# dig fossmint.com +short 104.17.179.254 104.17.171.254
To check the MX record of the domain name run.
# dig fossmint.com MX +short 50 mx3.zoho.com. 20 mx2.zoho.com. 10 mx.zoho.com.
Using the nslookup Command
To retrieve information about a domain name using the nslookup utility, use the following command.
# nslookup fossmint.com
Sample Output
Server: 127.0.0.53 Address: 127.0.0.53#53 Non-authoritative answer: Name: fossmint.com Address: 104.27.179.254 Name: fossmint.com Address: 104.27.171.254 Name: fossmint.com Address: 2606:4700:30::681b:b0fe Name: fossmint.com Address: 2606:4700:30::681b:b1fe
Conclusion
In this article, you learned how to install dig and nslookup command utilities in different Linux distributions and also the basic usage of the commands. We do hope that you can now comfortably install the utilities when confronted with a system without them.
Great tutorial! Just wanted to point out that to install dig and nslookup on debian you need root access. (or just use sudo)
@Logan,
Thanks for the heads-up!
You’re absolutely right, root access or sudo is needed to install those tools on Debian.
Glad you found the tutorial helpful!
Thanks a lot for the detailed instructions, it helped me a great deal :)