A Domain Name System (DNS) resolver is a server tasked to receive and respond to DNS queries from a user’s web browser or an application. DNS queries are requests to translate website domains into machine-readable labels called “Internet Protocol (IP) addresses.” The main job of a DNS resolver, therefore, is to “resolve” DNS queries by looking for the IP address of a website a user wants to visit.
Think of it as a computer program or dedicated device that acts like a telephone operator redirecting callers to the correct offices or departments. For example, when visiting amazon[.]com, your web browser asks the DNS resolver for its IP address to display the website. The DNS resolver will then look for Amazon’s IP address by first checking its memory then communicating with other DNS servers if it’s not cached.
Read More about “DNS Resolver”
DNS resolvers work silently in the background as we go from one web page to another. It is a critical part of the Internet as we know it today.
Why Are DNS Resolvers Important?
Humans and computers speak different languages. While we know that to access Amazon, we have to type amazon[.]com into our browsers, computer programs behind browsers can’t understand the command. The website domain has to be translated into an IP address, and the DNS resolver has to find that machine-readable identifier.
How Does a DNS Resolver Work?
We compared the job of a DNS resolver to that of a human telephone operator. Take, for instance, when you want to reach a particular company employee but don’t know his/her direct line. You most likely dial that organization’s telephone number and ask the operator to connect you to the person you’re looking for.
If the operator has the number memorized, he/she could immediately redirect your call. If not, the operator would consult a computer containing all the employees’ phone numbers.
In the same way, a user’s web browser asks a DNS resolver for the requested website’s IP address. It will first try to check if it has the IP address in its memory. If not, the resolver contacts other DNS servers to look for the correct IP address.
Simply put, a DNS resolver “resolves” DNS queries by looking for the website domain’s equivalent IP address from other DNS servers. A simple representation of the process is reflected by the image below.
What DNS Servers Does a DNS Resolver Communicate With?
The job of a DNS resolver is to track down the IP address of a requested web page by contacting other DNS servers. Here are the different types of DNS servers that a DNS resolver communicates with to obtain a page’s IP address:
- DNS root server: There are 13 root servers in the world, labeled from letters A to M. They are the first ones that the DNS resolver consults. But how does the DNS resolver know which root server to contact? The answer lies in the requested website’s top-level domain (TLD). For www[.]amazon[.]com, that would be the A root server operated by Verisign, the registry of the .com TLD.
- TLD nameserver: The root server provides the IP address of the TLD nameserver so the DNS resolver can contact it. Each TLD has its own set of TLD nameservers containing details on websites using it as an extension. In amazon[.]com’s case, the A root server gives the .com TLD nameserver’s address.
- Authoritative nameserver: Finally, once the DNS resolver contacts the TLD nameserver, it provides the details of the domain’s authoritative nameserver. The authoritative nameserver contains the requested website’s IP addresses and other information, which it then gives to the DNS resolver.
The whole process only takes a few seconds. Still, it’s fortunate that DNS resolvers don’t have to do this every time a user wants to visit a website since the servers can cache or store previously accessed IP addresses. The DNS resolver can take the IP address from its memory next time you want to visit amazon[.]com.