DNS - Domain Name Server

Domain Name Server If you spend any time on the Internet sending e-mail or browsing the Web, then you use Domain Name Servers without even realizing it.

Introduction
Domain Name Servers, or DNS, are an incredibly important but completely hidden part of the Internet, and they are fascinating.

The DNS system forms one of the largest and most active distributed databases on the planet. Without DNS, the Internet would shut down very quickly!

What DNS Does?
DNS translates (converts) the host name into the IP address and IP address into the host name.

An often used analogy to explain the Domain Name System is that it serves as the "phone book" for the Internet by translating human-friendly computer hostnames into IP addresses. For example, www.einfochips.com translates to 72.52.203.176. "www.einfochips.com" is easy to remember rather than http://72.52.203.176 People are good at remembering words, however, and that is where domain names come in!

What is Domain Name and its structure?
The right most name (.com, .org, .in etc.) are called as top-level domain name. Within every top-level domain there is a huge list of second-level domain like einfochips, microsoft, yahoo etc. In the case of winqual.microsoft.com, it is a third-level domain. Up to 127 levels are possible, although more than four is rare. The left-most word, such as www or encarta, is the host name. It specifies the name of a specific machine (with a specific IP address) in a domain.

Because all of the names in a given domain need to be unique, there has to be a single entity that controls the list and makes sure no duplicates arise. For example, the COM domain cannot contain any duplicate names, and a company called Network Solutions is in charge of maintaining this list

How DNS server works?
Name servers do two things all day long:

* They accept requests from programs to convert domain names into IP addresses. * They accept requests from other name servers to convert domain names into IP addresses.

Address Resolution mechanism
1.    When you type a URL into your browser, the browser's first step is to convert the domain name and host name into an IP address so that the browser can go request a Web page.

2.    The browser therefore contacts its name server and says, "I need for you to convert a domain name to an IP address for me." The name server may already know the IP address for www.einfochips.com. That would be the case if another request to resolve www.einfochips.com came in recently (name servers cache IP addresses to speed things up). OR

3.    A name server would start its search for an IP address by contacting one of the root name servers. The root servers know the IP address for all of the name servers that handle the top-level domains.

Your name server would ask the root for www.einfochips.com, and the root would say (assuming no caching), "I don't know the IP address     for  www.einfochips.com, but here's the IP address for the COM name server."

Note: The root server knows the IP addresses of the name servers handling the several hundred top-level domains. There are many of them scattered         all over the planet.

4.      It returns to your name server the IP address for a name server for the COM domain. Your name server then sends a query to the COM name server asking it if it knows the IP address for www.einfochips.com. The name server for the COM domain knows the IP addresses for the name servers handling the einfochips.COM domain, so it returns those.

5.      Your name server then contacts the name server for einfochips.COM and asks if it knows the IP address for www.einfochips.com. It does, so it returns the IP address to your name server, which returns it to the browser, which can then contact the server for www.einfochips.com to get a Web page.