The Domain Name System (DNS),
WHOIS,
and the
Domain Name Database

I've frequently used the phrase "Domain Name Database".

This page tries to define how I use that term.

Here's how the page is organized:

A Simplified Description of the Domain Name System and How It Operates

The Domain Name System is a hierarchical, distributed database.  It is described in a number of publications and articles:

A domain name is a sequence of "labels".

We are all reasonably familiar with domain names.  For example, "www.cavebear.com" is a sequence of the labels "com", "cavebear", and "www".

Notice that I have listed the labels in an order reverse from the way they appear in the domain name.  This represents the fact that the labels of a domain name have the more global part at the end.  Each label, as one moves from right-to-left represents a name within the scope of those labels which appear to its right.

Thus, the label "cavebear" is contained within the label "com".   And the label "www" is contained within "cavebear" (which is contained within "com".)

As you can guess, this nesting of names can be carried to considerable depth.

The most important, most global, rightmost label is not usually shown in domain name.   The "root", as it is usually called is simply ".".  (This is distinct from the dots used to separate labels.)

The DNS essentially translates a sequence of "labels" into a record of some sort.

The DNS contains a number of record types.  The most typical ones contain the IP addresses of host computers.  Other types of records contain aliases for labels, information about DNS servers, information about the location of exchangers for electronic mail, etc.

The way in which the DNS resolves a domain name query into a record is roughly as follows:

Suppose a user's computer wants to read a web page from host "www.cavebear.com".  That computer would contact a local name server, the address of which is configured into the user's computer by some administrative mechanism.

The local name server would look into its own configuration files to ascertain a set of name servers which resolve labels within the root zone.  The local server would then contact a root level server and ask "do you know where I can find a server that knows the label "com"?

The root server would respond with a record indicating a set of servers which can answer questions about labels within "com".

The local name server would then select one of the "com" servers and send a query asking "do you know where I can find a server that knows the labels "cavebear.com"?  And that server would respond.

Then the local server would ask the "cavebear.com" server "do you know the host address that goes with the labels "www.cavebear.com"?   And that server would respond.

The servers for the "com" are typically known as TLD servers, TLD meaning "Top Level Domain" (which is somewhat untrue because of the existence of the usually hidden root level.)  There are only a few TLD servers.

Servers for the inferior levels, for example "cavebear.com" are most frequently located in the individual organizations which have registered a particular label within a TLD.  There are literally hundreds of thousands of such servers, each handling (typically) only a small number (usually one) label within a TLD.

The system is, in practice, rather more complex.  There are backup servers, there are caches so that the servers are not swamped with repeated queries, and there are "zone" transfers so that servers can update one another.

There are a few particularly important zone transfers.

Notice that I mentioned that a label within a TLD is "registered".   There are various organizations which operate registries.  One such organization is Network Solutions, which operates a registry under a cooperative agreement from NSF.

The registries maintain a registration database, which they convert to a file appropriate for DNS servers.  Thus, for example, NSI has a database which knows which organization has registered which label within "com" and what name server that organization has designated to handle queries to its registered label.

Thus, for example, somewhere within NSI is a database that contains, among millions of other records an entry that says essentially:

Label TLD Served by Registered To:
"cavebear" "com" 192.203.17.70 Karl Auerbach

(English translation: "names inside the domain 'cavebear.com' are resolved using the server at IP address 192.203.17.70.  The domain 'cavebear.com' is registered to Karl Auerbach.")

What does a Registry Do?

A registry is simply an organization keeps track of what domain names are served by what servers and who is responsible for the domain.  For example, the .gov TLD takes registration requests from governmental organizations for labels within .gov.

These requests require that the registrant provide the name, telephone number and other information.

In particular, we know from the "whois" database we know this about the domain "whitehouse.gov":

Whitehouse Public Access (WHITEHOUSE-DOM)
725 17th Street NW Room NEOB 4208
Washington, D.C. 20503
US

Domain Name: WHITEHOUSE.GOV

Administrative Contact, Technical Contact, Zone Contact:
Fox, Jack S. (JSF) fox_j@A1.EOP.GOV
(202) 395-6417
Billing Contact:
Fox, Jack S. (JSF) fox_j@A1.EOP.GOV
(202) 395-6417

Record last updated on 26-Sep-96.
Record created on 17-Oct-94.
Database last updated on 13-Jan-98 04:06:07 EDT.

Domain servers in listed order:

SEC1.DNS.PSI.NET 38.8.92.2
SEC2.DNS.PSI.NET 38.8.93.2

A registry uses its database of names and servers to generate "zone" files, the data files used by Domain Name Servers.

The worlds largest, and dominant registrar is Network Solutions, Inc.   In 1992 NSI was awarded a "cooperative agreement" from the National Science Foundation to be the global registrar for the top-level domains (TLDs) of .com, .net, .org , .gov, and .edu.  This award was part of NSF's "Internic" project.

NSI is presently expanding their registry operations under the name "WorldNIC".

The WHOIS Database

Ever since the ARPAnet days in the early 1970s, information about users on the network has been collected by a "Network Information Center" or "NIC" and published in "ARPAnet Handbook"s.

SRI in Menlo Park, California, operated the NIC services for the net for many years under contract to the various agencies under whos auspices the network fell at any given time.

Bolt Beranek and Newman, Inc (BBN) also performed a "Network Service Center" function under contract with the National Science Foundation.

Publication of information about individuals on the network continued into the 1990s -- For example, BBN published, under a contract deriving from NSF, an "Internet Manager's Phonebook"

As the network and the domain name system evolved, there was simply too many names of individuals to be published on paper.  An electronic version has evolved.   Although it takes a number of forms it is generally known as "whois" from the command most people type, for example:

  > whois hubbard | grep -i kim
  Hubbard, Kim (KH1589)   kimh@ARIN.NET   703-742-4870

The National Science Foundation, under the Internic set of cooperative agreements, funds Network Solutions and AT&T to share domain name registration information and publish that information in the "whois" database.

The Domain Name Database

I consider the "Domain Name Database" to be the aggregation of information used to drive the domain name system and the "whois" database.

I include the information about individuals which is gathered by the registries.   Such information is a necessary part of the operation of the Domain Name System.   The DNS  would degenerate into chaos if there were no way to know who is responsible for what names in the system.

(In addition, such information has always been gathered in conjunction with domain name management, even before NSF became involved with the network and before the advent of the InterNIC.)


Updated: January 18, 1998