An example of theoretical DNS recursion
|
|
An example may clarify this process. Suppose an application needs to find the IP address of www.checkdns.net. It puts this question to a local DNS recursor.
|
- Before starting, the recursor has to know where to find the root servers; administrators of recursive DNS servers manually specify (and periodically update) a file called the root hints which specify recently known IP addresses of these servers, from which the DNS server can obtain a current complete list.
- The process starts by the recursor asking one of these root servers - for example, the server with the IP address "198.41.0.4" - the question "what is the IP address for www.checkdns.net?"
- The root server replies with a delegation, meaning roughly: "I don't know the IP address of www.checkdns.net, but I do know that the DNS server at 204.74.112.1 has information on the net domain."
- The local DNS recursor then asks that DNS server (i.e. 204.74.112.1) the same question it had previously put to the root servers, i.e. "what is the IP address for www.checkdns.net?". It gets a similar reply - essentially, "I don't know the address of www.checkdns.net, but I do know that the DNS server at 195.60.98.250 has information on the checkdns.net domain."
- Finally the request goes to this third DNS server (195.60.98.250), which replies with the required IP address.This process utilizes iterative searching.
|
|