DNS, the Domain Name System, is a distributed database that handles the mapping between host and domain names which are more convenient for humans, and the numerical Internet addresses. That is, it acts much like a phone book, so you can "call" www.wikipedia.com instead of 184.108.40.206.
DNS also provides additional information, such as alias names for systems, contact information, and which hosts act as mail hubs for groups of systems or domains.
The DNS system is run by various flavors of DNS software:
- BIND (Berkeley Internet Name Domain), the most commonly used namedaemon.
- djbdns (Dan J Bernstein's DNS implementation)
- Surely others too...
The current way the main DNS system is controlled is often criticized. The most common problems pointed at are that it is abused by monopolies such as Network Solutions, Inc., and problems with assignment of TLDs. Some also critisize that many implementations of DNS server software fail to work gracefully with Dynamic IP addresses, although that is the failure of specific implementations and not failures of the protocol itself.