Introduction
-----------------------
DNS stands for Domain Naming System. DNS is a very complicated protocol and worldwide distributed database that translates our easy to remember words into actual addresses that computers can use to communicate. This article is not meant to go into all of the details of DNS, only give a high level overview.
Why does DNS exist?
-----------------------
In order to reach a server over the internet, an ip address is needed to contact the server. Instead of trying to remember addresses in number form such as 64.156.132.140, people more easily remember words such as experts-exchange.com
Who is responsible for DNS?
-----------------------
In short, DNS is owned by the world. No single organization is responsible for all of the DNS infrastructure.
How does it work?
-----------------------
Domain names consist of a top level domain, abbreviated by TLD (.com, .org, .net, .edu, etc.), a second level domain, and can contain one or more subdomains or hosts up to 127 levels.
1. The clients resolver sends the request to its assigned DNS server.
2. When a request is submitted to a DNS server, it goes through the following process.
a. Return the IP address for the domain if it knows it either by caching or if it is authoritative for the domain. If the server is authoritative for the domain and cannot find an address that matches the query, an authoritative answer is sent back to the client that the record does not exist.
b. If the address is unresolvable locally and the domain is not hosted by the server, the request is either forwarded to another DNS server or root hints are used to try to figure out the address.
c. Through the use of iterative queries, root hints are used to first resolve the TLD and try to get closer and closer to the requested domains authoritative server through the use of referrals to "best guess" servers.
d. The authoritative server responds with an answer.
3. If the address was found, the client can now establish communication with the returned address. If no address was found, an error is returned.
Comments (3)
Commented:
Author
Commented:Commented: