Resolution Process Steps
Now, suppose you are an employee within XYZ Industries and one of your clients is in charge of the networking department at Googleplex U. You type into your Web browser the address of this department’s Web server, “www.net.compsci.googleplex.edu”. In simplified terms, the procedure would involve the following set of steps (Figure 245 shows the process graphically):
1- Your Web browser recognizes the request for a name and invokes your local resolver, passing to it the name “www.net.compsci.googleplex.edu”.
2- The resolver checks its cache to see if it already has the address for this name. If it does, it returns it immediately to the Web browser, but in this case we are assuming that it does not. The resolver also checks to see if it has a local host table file. If so, it scans the file to see if this name has a static mapping. If so, it resolves the name using this information immediately. Again, let’s assume it does not, since that would be boring.
3- The resolver generates a recursive query and sends it to “ns1.xyzindustries.com” (using that server’s IP address, of course, which the resolver knows).
4- The local DNS server receives the request and checks its cache. Again, let’s assume it doesn’t have the information needed. If it did, it would return the information, marked “non-authoritative”, to the resolver. The server also checks to see if it has in its zone resource records that can resolve “www.net.compsci.googleplex.edu”. Of course it does not, in this case, since they are in totally different domains.
5- “ns1.xyzindustries.com” generates an iterative request for the name and sends it to a root name server.
6- The root name server does not resolve the name. It returns the name and address of the name server for the “.edu” domain.
7- “ns1.xyzindustries.com” generates an iterative request and sends it to the name server for “.edu”.
8- The name server for “.edu” returns the name and address of the name server for the “googleplex.edu” domain.
9- “ns1.xyzindustries.com” generates an iterative request and sends it to the name server for “googleplex.edu”.
10- The name server for “googleplex.edu” consults its resource records. It sees, however, that this name is in the “compsci.googleplex.edu” subdomain, which is in a separate zone. It returns the name server for that zone.
11- “ns1.xyzindustries.com” generates an iterative request and sends it to the name server for “compsci.googleplex.edu”.
12- The name server for “compsci.googleplex.edu” is authoritative for “www.net.compsci.googleplex.edu”. It returns the IP address for that host to “ns1.xyzindustries.com”.
13- “ns1.xyzindustries.com” caches this resolution. (Note that it will probably also cache some of the other name server resolutions that it received in steps #6, #8 and #10; I have not shown these explicitly.)
14- The local name server returns the resolution to the resolver on your local machine.
15- Your local resolver also caches the information.
16- The local resolver gives the address to your browser.
17- Your browser commences an HTTP request to the Googleplex machine’s IP address.