DNS: The Hidden Backbone of the Internet

When setting up publicly available web servers, many things must be configured correctly for everything to work smoothly: firewall settings, choosing the appropriate user account controls, and installing updated and patched versions of the web server of your choice. However, one of the least transparent steps of the process is configuring the DNS settings for your server.

What Is It?

The DNS, or Domain Name System, is the system by which easily remembered domains are mapped to the appropriate server IP addresses. Without this system, memorization of each server’s IP address would be required. The first things configured for a domain’s records are the name servers. The name server settings tell visitors attempting to reach your site where to look for the remainder of the records. These can be hosted locally, run by your host, or hosted by a third party. This setting is usually one to four names or IP addresses for the server containing your records.

The record is composed of multiple parts. One part, the A record, maps an IP address to a name for a static IP address. The CNAME record maps one name to another, but only if the name it is mapped to is unique. The MX records handle mail server configuration for that domain. There are others, but these are the most common.

How It Works

One reason that this system is overlooked is that much of the system happens outside of our immediate control and only takes fractions of a second. Although one can control the records, and may even host his or her own name server, there is still much more going on behind the scenes.

Once a domain name is submitted via a browser, the computer queries the specified DNS servers. Usually, these are assigned by the ISP of the visitor, although other servers, such as Google’s, may be set manually. These servers, known as recursive resolvers, have a cache of IP addresses stored for quick lookup. If your server’s address is stored here, it is sent back to the visitor, and the process is complete. If it is not found, then the query is forwarded to the root name server for the Top-Level Domain of your website. The TLD, such as .ca or .com, maintains name servers for all Second-Level Domains. Once the address is found, it is then forwarded to the visitor.

How Does This Help?

Errors caused by DNS can be some of the trickiest to troubleshoot. Having a solid understanding of the system is invaluable. You can track site issues down to a local ISP, misconfigured A records, or another source, in order to quickly eliminate downtime.