The Many Steps of Name Resolution

At its most basic, DNS is a system that converts domain names into IP addresses. It's the way humans are likely to remember and categorize things resolved into the way computers prefer to think of things. This process of using DNS to turn a domain name into an IP address is known as name resolution. Let's take a closer look at exactly how this works.

DNS Server Configuration

The first thing that's important to know is that DNS servers are one of the things that need to be specifically configured at a node on a network. For a computer to operate on a modern network, it needs to have certain configurations. These include MAC addresses, IP address, subnet mask, gateway, and DNS server. A DNS server is the fourth and final part of the standard modern network configuration.

Types of DNS Servers

There are five primary types of DNS servers:

  1. Caching name servers: These servers, usually provided by an ISP or local network, store domain name lookups for a certain amount of time to prevent repeated lookups.

  2. Recursive name servers: These servers perform full DNS resolution requests. Local name servers often fulfill the duties of both caching and recursive name servers.

  3. Root name servers: There are 13 root name servers responsible for directing queries toward the appropriate TLD name server.

  4. TLD name servers: Each top-level domain (TLD) has its own name server responsible for providing authoritative information for that domain.

  5. Authoritative name servers: These servers are responsible for the last two parts of any domain name and provide the actual IP address of the server in question.

Name Resolution Process

Let's illustrate the name resolution process with an example:

  1. Your friend enters a domain name (e.g., www.facebook.com) into a web browser, and their computer asks the local name server for the IP address of the domain.

  2. If the local name server doesn't have the IP address in its cache, it performs a recursive resolution. It contacts the root name server, which directs it to the TLD name server responsible for the domain's TLD (e.g., .com).

  3. The TLD name server then redirects the lookup to the authoritative name server for the specific domain (e.g., facebook.com).

  4. Finally, the authoritative name server provides the IP address of the server associated with the domain name, which is delivered to your friend's computer and stored in the cache for future use.

Caching and Time to Live (TTL)

Caching name servers store resolved domain name lookups for a certain period defined by the TTL value. TTL represents the time a name server is allowed to cache an entry before performing a full resolution again. TTLs have become shorter over time, ranging from a few minutes to a few hours, to accommodate faster internet speeds. However, some domains may still have lengthy TTLs, which means changes in DNS records may take longer to propagate.

Benefits of the Hierarchical DNS System

The hierarchical DNS system, involving root name servers, TLD name servers, and authoritative name servers, ensures the stability and accuracy of DNS resolutions. By following a strictly regulated and controlled series of lookups, it protects against malicious redirection of traffic. Local name servers and temporary DNS caches on individual computers also help reduce the need for full lookups for every TCP connection.

Now that you understand the many steps involved in name resolution, you can appreciate why caching and hierarchical systems play crucial roles in the efficient functioning of DNS.

👍

Last updated