Domain Name System |
The Domain Name system (DNS) associates various sorts of information
with so-called domain names; most importantly, it serves as the "phone book" for
the Internet by translating human-readable computer hostnames, e.g.
en.wikipedia.org, into the IP addresses, e.g. 66.230.200.100, that
networking equipment needs to deliver information. It also stores other
information such as the list of mail exchange servers that accept email for a
given domain. In providing a worldwide keyword-based redirection service, the
Domain Name System is an essential component of contemporary Internet use.
History
The practice of using a name as a more human-legible abstraction of a
machine's numerical address on the network predates even TCP/IP, and goes all
the way to the ARPAnet era. Back then however, a different system was used, as
DNS was only invented in 1983, shortly after TCP/IP was deployed. With the older
system, each computer on the network retrieved a file called HOSTS.TXT
from a computer at SRI (now SRI International). The HOSTS.TXT file mapped
numerical addresses to names. A hosts file still exists on most modern operating
systems, either by default or through configuration, and allows users to specify
an IP address (eg. 192.0.34.166) to use for a hostname (eg. www.example.net)
without checking DNS. As of 2006, the hosts file serves primarily for
troubleshooting DNS errors or for mapping local addresses to more organic names.
Systems based on a hosts file have inherent limitations, because of the obvious
requirement that every time a given computer's address changed, every computer
that seeks to communicate with it would need an update to its hosts file.
The growth of networking called for a more scalable system: one that recorded
a change in a host's address in one place only. Other hosts would learn about
the change dynamically through a notification system, thus completing a globally
accessible network of all hosts' names and their associated IP Addresses.
At the request of Jon Postel, Paul Mockapetris invented the Domain Name
system in 1983 and wrote the first implementation. The original specifications
appear in RFC 882 and 883. In November 1987, the publication of RFC 1034 and RFC
1035 updated the DNS specification[1] and made RFC 882 and RFC 883 obsolete.
Several more-recent RFCs have proposed various extensions to the core DNS
protocols.
In 1984, four Berkeley students � Douglas Terry, Mark Painter, David Riggle
and Songnian Zhou � wrote the first UNIX implementation, which was maintained by
Ralph Campbell thereafter. In 1985, Kevin Dunlap of DEC significantly re-wrote
the DNS implementation and renamed it BIND (Berkeley Internet Name Domain,
previously: Berkeley Internet Name Daemon). Mike Karels, Phil Almquist and Paul
Vixie have maintained BIND since then. BIND was ported to the Windows NT
platform in the early 1990s.
Due to BIND's long history of security issues and exploits, several
alternative nameserver/resolver programs have been written and distributed in recent
years.
|