What is DNS?
The Domain Name Service (or DNS) is sometimes referred to as “the phonebook of the internet.” The purpose of a phonebook is to map a name to a phone number. Names are easy to remember, but you need a phone number to actually contact someone.
The Internet works in the same way. Domain names (like kzero.com) are easy to remember, but, to contact a computer, you need its IP address (such as 22.214.171.124). When browsing the web, you’re more likely to remember and use a site’s domain name or URL than its IP address.
DNS bridges the gap between domain names and IP addresses. A hierarchy of DNS servers exists so that a computer can find and speak with one that can provide the IP address for a specific domain name.
How Does DNS Work?
Every domain on the Internet has DNS records associated with it. These DNS records contain the information needed to reach certain servers within an organization. For example, the A record will point to an organization’s web server and will be used to browse to that organization’s website. The MX record is the mail record and is used when sending an email to that domain.
When a user wants to browse to a website or send an email, their computer needs to look up the IP address for the associated domain. If it doesn’t have a copy stored locally — which it might for commonly visited sites — it will need to use DNS.
DNS servers are organized into a hierarchy. Otherwise, a single server maintaining DNS records for the entire Internet would easily be overwhelmed. When a user tries to visit a website (such as www.kzero.com), it might trigger the following process:
- Request to Root Nameserver: The IP addresses of root nameservers are known to a computer or a DNS resolver (which can help with DNS requests). The DNS resolver will ask the root nameserver for the IP address of a top-level domain (TLD) DNS server. For example, a request for www.kzero.com will start with a request for the IP address of a .com DNS server.
- Request to TLD DNS Server: The TLD server should have a record on file for kzero.com. The next request will be for the IP address of the DNS server that keeps the DNS records for the kzero.com domain.
- Request to kzero.com DNS Server: The final request should be to the DNS server hosting the kzero.com domain. This may be operated by the organization or by a DNS provider. This final request can give the appropriate IP address for www.kzero.com.
The DNS hierarchy is designed to ensure that an IP address can be found without overburdening a particular server or taking too long. With just a few requests, a computer can move from the IP address of a root nameserver to learning the IP address needed to fetch a particular webpage on a website.
DNS is critical infrastructure on the modern Internet, providing the ability to look up IP addresses based on knowledge of the associated domain name. Without DNS, computers would need to maintain master lists of IP addresses for various sites, which would rapidly become unusable.