What is DNS
DNS or Domain Name System exists to resolve a domain (i.e. YouTube.com) to an IP address.
We humans whenever we are accessing a site, we enter the domain name of the site. The reason is simple, names are much easier to be remembered over IP addresses.
Wouldn’t it be weird when your friend gives you an IP address when you ask him where you can purchase the tickets to The 1975’s concert online.
Then, why do we need this you may ask?
Unfortunately, computers use IP addresses to identify one another on the internet, hence the DNS is for the computers!
Have you wondered what happens when you enter the YouTube.com web browser?
DNS plays a major role here.
Now that we know what and why we need DNS, is time for the fun part.
How does DNS resolve youtube.com to an IP address?
Before we dive in to understand the flow, we will first need to understand the critical components that facilitate a successful resolution.
The Resolver is a server responsible to receive DNS queries and track down the IPs of the domain in each of the DNS queries for a successful resolution.
Resolvers are usually managed and configured by our Internet Service Providers (ISPs) and are able to locate the Root Server.
The Root Server is the first contact point for the Resolver in its journey to resolve a domain.
The root server directs the Resolver to the appropriate Top Level Domain Server.
Before we address what a Top Level Domain server is, let’s first understand what a Top Level Domain is.
Top Level Domain refers to the last section of a domain name. For example, the Top Level Domains of youtube.com
.com and web.mit.edu is
Each Top Level Domain has their own Top Level Domain server and they direct the Resolver to the Authoritative Name Server of the domain.
The Authoritative Name Server is the final destination for the Resolver in the journey of resolving the domain, where it receives the IP of the domain being resolved.
How are the Top Level Domain servers aware of the Authoritative Name Servers?
That’s easy, when we purchase a domain from a domain registrar (i.e. GoDaddy, NameCheap), the domain registrar usually provides a default Authoritative Name Server and it communicates that to the Top Level Domain server.
- The user types YouTube.com in the Web Browser and the request to resolve the domain is forwarded to the Operating System.
- The Operating System forwards the request to the Resolver.
- The Resolver queries the Root Server.
- The Root Server responds to the Resolver’s query by providing the address of the .com Top Level Domain Server.
- The Resolver then queries the .com Top Level Domain Server.
- The .com Top Level Domain Server responds to the Resolver’s query by providing the address of the Authoritative Name Server.
- The Resolver then queries the Authoritative Name Server of YouTube.com.
- The Authoritative Name Server provides the IP address of YouTube.com to the Resolver.
- The Resolver provides the IP address to the Operating System.
- The Operating System provides the IP address to the Web Browser.
- The Web Browser performs an HTTP request to the YouTube.com IP.
- The Server at the IP which handles the requests to YouTube.com returns the webpage to be rendered in the Web Browser