Tuesday, October 2, 2012

Tuesday, October 02, 2012 -

Discuss the various steps in domain name resolution.

The domain name resolution process can be summarized in the following steps:
1. A user program issues a request such as the gethostbyname() system call (this particular call asks for the IP address of a host by passing the host name) or the gethostname() system call (which asks for a host name of a host by passing the IP address).
2. The resolver formulates a query to the name server. (Full resolvers have a local name cache to consult first; stub revolvers do not.
3. The name server checks to see if the answer is in its local authoritative database or cache, and if so, returns it to the client. Otherwise, it queries other available name servers, starting down from the root of the DNS tree or as high up the tree as possible.

4. The user program is finally given a corresponding IP address (or host name, depending on the query) or an error if the query could not be answered. Normally, the program will not be given a list of all the name servers that have been consulted to process the query. Domain name resolution is a client/server process .The client function (called the resolver or name resolver) is transparent to the user and is called by an application to resolve symbolic high-level names into real IP addresses or vice versa. The name server (also called a domain name server) is the server application providing the translation between high- level machine names and the IP addresses. The query/reply messages can be transported by either UDP or TCP.