DNS Stands for Domain Name System.
DNS is a hierarchical decentralized naming system for computers, services, or any resource connected to the Internet or a private network.
DNS is an Internet service that translates domain names into IP addresses.
Because domain names are alphabetic, they're easier to remember.
The Internet however, is really based on IP addresses.
Every time you use a domain name, therefore, a DNS service must translate the name into the corresponding IP address.
For example, the domain name www.booksmountain.com might translate to 18.104.22.168.
Need for DNS:
One identifier for a host is its hostname.
Hostnames are mnemonic and are therefore appreciated by humans. such as: a. www.booksmountain.com. b. www.Facebook.com. c. www.Google.co.in. d. surf.eurecom.fr.
Hostnames provide little information about the location within the Internet of the host.
A hostname such as surf.eurecom.fr, which ends with the country code .fr, tells us that the host is in France, but doesn't say much more.
Furthermore, because hostnames can consist of variable-length alpha-numeric characters, they would be difficult to process by routers.
For these reasons, hosts are also identified by so-called IP addresses.
An IP address consists of four bytes and has a rigid hierarchical structure.
An IP address looks like 22.214.171.124, where each period separates one of the bytes expressed in decimal notation from 0 to 127.
An IP address is hierarchical because as we scan the address from left to right, we obtain more and more specific information about where the host is located in the Internet. (Like a postal address)
An IP address is included in the header of each IP datagram.
Internet routers use this IP address to route datagram towards its destination.
DNS Protocol Functioning:
User type a domain name such as ‘www.booksmountain.com’ into the browser (“client”).
The client needs to find the IP address where ‘www. booksmountain.com’ content is located.
Browser will send this query to the operating system of the computer.
Each operating system is configured to query certain DNS servers (Resolving Name Server).
The resolving name server is not aware of the location of ‘Booksmountain.com’, but it does know where the root servers are located.
Next, the resolving name server finds the location of the top-level domain name server (In this case COM severs) and sends a query for ‘Booksmountain.com’.
Each domain on the Internet has an Authoritative name server.
Finally, the authoritative name server will give you the exact IP address of ‘Booksmountain.com’.
This information will come back to the resolving name server, which caches the information and sends backs the information to your browser.
And at the end, you would find yourself on Booksmountain's homepage.
All these complex task take place in seconds.