For questions pertaining to Domain Name System (DNS), a service that provides the resolution of host names to IP addresses. Use this tag when you are troubleshooting DNS issues, configuring a DNS resolver or server, or are trying to understand DNS's involvement in your situation.
Introduction
The Domain Name System (DNS) is a hierarchical decentralized naming system for computers, services, or any resource connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities. Most prominently, it translates more readily memorized domain names to the numerical IP addresses needed for the purpose of locating and identifying computer services and devices with the underlying network protocols. By providing a worldwide, distributed directory service, the Domain Name System is an essential component of the functionality of the Internet.
The Domain Name System delegates the responsibility of assigning domain names and mapping those names to Internet resources by designating authoritative name servers for each domain. Network administrators may delegate authority over sub-domains of their allocated name space to other name servers. This mechanism provides distributed and fault tolerant service and was designed to avoid a single large central database.
The Domain Name System also specifies the technical functionality of the database service which is at its core. It defines the DNS protocol, a detailed specification of the data structures and data communication exchanges used in the DNS, as part of the Internet Protocol Suite. Historically, other directory services preceding DNS were not scalable to large or global directories as they were originally based on text files, prominently the HOSTS.TXT resolver. The Domain Name System has been in use since the 1980s.
Examples
IP addresses are hard to remember, especially in IPv6. DNS creates looks like a telephone book and converts text names to IP addresses. For example one can type on a browser www.luc.edu
instead of 147.126.1.230
.
One thing that DNS makes possible is changing the IP address while not changing the name. This allows moving the site to another provider, without requiring users to learn anything new. It is also possible to have several different DNS names resolve to the same IP address, and have the same http web server at that IP address handle the different names as different websites.
As already stated, DNS is hierarchical and distributed system. In looking up cs.luc.edu
four different DNS servers may be required: for the so-called "DNS root zone", for edu, for luc.edu and cs.luc.edu
. Searching hierarchy can be cumbersome, so DNS search results are usually cached locally.
Further reading
How can I resolve a hostname to an IP address in a Bash script?
How do I set my DNS when resolv.conf is being overwritten?
External References