DNS is the short form of a Domain Name System. It is a system that translates human-readable website addresses into machine-readable IP addresses. In other words, it is a phonebook of the internet.
Every device connected to the Internet has a unique IP address which is a combination of numbers. It is difficult for humans to remember these numbers. So, DNS comes into the picture. It stores the IP address of websites against their domain names. When you type a domain name in your browser, DNS servers associated with your ISP resolves the domain name and connect you to the corresponding website.
DNS servers are of two types:
1) Recursive DNS servers
2) Authoritative DNS servers
Recursive DNS servers are also called caching DNS servers. They are responsible for resolving the DNS queries of the clients. When a recursive DNS server receives a DNS query, it first checks its cache to see if it has the required information. If the information is not present in the cache, the recursive DNS server sends a request to the authoritative DNS server to get the required information. Once the information is received, it is stored in the cache so that the next time a query for the same information is received, it can be resolved quickly.
Authoritative DNS servers are responsible for storing the DNS records for a zone. A zone is a part of the DNS namespace for which a particular server has the authority to answer queries. Authoritative DNS servers are also responsible for providing information to the recursive DNS servers.
DNS is a critical component of the Internet. It is responsible for translating the human-readable domain names into machine-readable IP addresses. It is also responsible for providing information to the recursive DNS servers so that they can resolve the DNS queries of the clients.
DNS is a distributed database system. It means that the DNS database is spread across a large number of servers around the world. This ensures that the DNS database is available even if one or more servers are down.
DNS is a hierarchical system. It means that the DNS namespace is organized in a hierarchy. At the top of the hierarchy is the root zone. The root zone is managed by the root servers. The root servers are operated by different organizations.
The DNS system is designed to be scalable. It means that it can handle a large number of queries. The DNS system is also designed to be fault-tolerant. It means that it can continue to work even if one or more servers are down.