Connected: An Internet Encyclopedia
DNS Theory

Up: Connected: An Internet Encyclopedia
Up: Programmed Instruction Course
Up: Section 2 - Domain Naming
Prev: Naming
Next: RFC 1034

DNS Theory

DNS Theory DNS uses a distributed database to maintain its world-wide tree of names.

DNS uses a distributed database protocol to delegate control of domain name hierarchies among zones, each managed by a group of name servers. For example, *.cnn.com, where * is anything, is completely the responsibility of CNN (Turner Broadcasting, as they say). CNN is responsible for constructing name servers to handle any domain name ending in cnn.com, referred to as their Zone of Authority (ZOA). A zone takes its name from its highest point, so this zone is simply called cnn.com. CNN registers their zone with InterNIC, who loads their name server IP addresses into the root name servers, which makes this information available to the global Internet. CNN can also make subdelegations, like delegating news.cnn.com to their news division. This can be as simple as creating new name server entries with the longer names, but mechanisms exist if the delegee wants to operate an independent name server (see RFC 1034 §4.2).

Of course, CNN doesn't actually maintain their own name server. Like most people, they let their Internet service provider do it for them. In their case, that means ANSnet, so nis.ans.net is their primary name server, and ns.ans.net their backup name server. How do I know this? I accessed InterNIC's Whois service and retrieved cnn.com's domain information record. Follow the link to try this yourself.

So, name servers contain pointers to other name servers, that can be used to transverse the entire domain naming hierarchy. You may be wondering how Internet hosts find an entry point to this system. Currently, it can be done in three major ways, all of which depend on preloading the IP address of at least one name server. One way is to preconfigure addresses of the root name servers. This method is typically used by Internet service providers on their name servers, typically in the UNIX file /etc/namedb/named.root. Another way is to preload the address of a name server that supports recursive queries, and send any name server lookups to it. This method is common among dial-up Internet subscribers. The user preloads the address of the service provider's name server, which processes all queries and returns the answer to the client. The final method is to automatically configure the address of a recursive name server, perhaps using a PPP extension (RFC 1877) that is not yet widely supported.

Once a host has been configured with initial name server addresses, it can use the DNS protocols to locate the name servers responsible for any part of the DNS naming hierarchy, and retrieve the resource records (RRs) that match DNS names to IP addresses and control Internet mail delivery.


Next: RFC 1034

Connected: An Internet Encyclopedia
DNS Theory