The Ultimate Beginners Guide To DNS

The Ultimate Beginners Guide To DNS blog image

Posted: July 1st, 2023

Key Takeaways

  • What is a Domain Name
  • What is DNS
  • What is a Hostname
  • What is a Nameserver
  • How DNS Works
  • DNS Name Resolution
  • Host Name Resolution
  • Dynamic DNS
  • Types of DNS Records
  • Common Problems with DNS

What is a Domain Name

A Domain Name is your web address. For example, our web address wallabydesigns.com is our domain name. To unpack the parts of a domain name as it pertains to DNS, consider the following domain:

web address

Each domain name is made up of a number of parts, three to four typically (see above), that allow it to function across the web. While the Protocol (1) is required for browsing, a domain name can often be simplified to parts 3 and 4. We will explain each part separately below. 

part 1 of a web address, the protocol

1: Protocol

Ignoring that our web address does not make use of the www part, you may notice a few different things. Firstly, the https:// portion of the web address is the protocol, which translates to 'Hyper Text Transfer Protocol Secure'. This is a fancy term that basically defines the kind of connection we are making with the domain name. There are occasions where another kind of protocol might be employed such as ftp, which is a file transfer protocol, but that goes beyond the scope of this article. Suffice it to say that this portion of the web address is important.

subdomain of a web address

2: Subdomain (Optional)

WWW means World Wide Web. While this used to be a required portion of the domain name for web viewing, it has since been made redundant due to evolving web standards. Subdomains can take many forms and are often used by websites to separate content such as Authentication and accounts from public facing content, or as an API gateway where such is required. For example, you may have noticed some websites use account.domain.com notation to signify when you are logged in to your account on a website or service. A subdomain is not required for a website to function, but when required for specific functionality should be included in the web address.

You can create as many subdomains as your host allows with great flexibility. For example, if I wanted to, I could create the following subdomain: thisisthenameofthesubdomain.wallabydesigns.com, and attach any page to it that I wanted to. There are a number of reasons why you would wish to use a subdomain rather than your main domain, but the important thing to note here is that your subdomain can be created at the DNS level, rather than being registered as a new web address with a registrar.

second level domain portion of a web address

3: 2nd Level Domain

This is where your site identity comes in. Chances are if you are reading this you already have a domain name, or technically, access to a second level domain. This is the part of the address that many would define as the 'name' of the domain. Your 2nd level domain is what you renew when you buy a domain name from a domain registrar.

top level domain of a web address

4: Top Level Domain

Ever wondered what that .com, .net, .org (etc) at the end of a website is for? It is known as the Top Level Domain (TLD), or Domain Suffix, and is used to index domains and is what allows DNS functionality to work. There are a number of Top Level Domains in use and chances are you've come across a number of them. The primary difference between one top level domain and another is not just the renewal rates, but likely the ownership of the TLD. Not all Domain Registrars are able to buy domains from all Top Level Domains (TLDs), so your decision on a domain may need to factor this. Another point to note, TLDs can also have a country code (i.e. Australia uses .au), but this is considered part of the Top Level Domain (.com.au, .net.au etc.). 

What is DNS?

DNS translates to 'Domain Name System', but what does that mean? To put it simply, it is essentially an address book for different Domains, which allows for them to be found on the internet and also used in many useful ways. Externally, it allows you to be found and internally it allows you to utilize your domain to its full potential. For example, internally your Domain Name (see above) can be used for email, a website, file transfer, and numerous other things. The DNS record, therefore, allows your domain to be diverse in how it can accomplish these functions.

Every device that is connected to the internet has an IP address. This is a unique address that not only allows your device to connect, but also to receive content on the internet. We won't go into IP Address theory here, but the important thing to note is that IP Addresses used to be the primary method of internet browsing before DNS.

Obviously it is not really practical to have to visit websites using IP addresses, which is where Host Names come in.

What are Host Names

Before the days of DNS, computers on a network would create a hosts file, which was a file that mapped IP Addresses to host names, similar to how we use domain names now. This was useful when browsing locally over the network as it allowed for the naming of computers, but was not a good system for external networking, such as is required over the international network.

screenshot of the hosts file from windows

Local networks still use this hosts file, showing its usefulness, and also demonstrating the origins of the Domain Name System (DNS) as it is widely used today. Your hosts file also allows you to map local addresses for other uses, such as in my case some docker functionality that is used for development and so forth. If you have a PC, you can find your hosts file at:

c:\windows\system32\drivers\etc

As the Internet developed, it became impractical to store all web addresses locally for a number of reasons, including:

  • The file needed to be on each computer
  • Due to the unstructured nature of the file (see above), processing the file would take time, especially as the list grew
  • Each time changes were made externally, all local files would need to be changed. Something as simple as adding a subdomain would require a complete update to the hosts file
  • Growing file size as more hosts are added

This promoted the need for an externally based library, or Domain Name System (DNS), to organize domains and their addresses where they could be retrieved easily rather than fetched locally.

What are Nameservers?

Nameservers, if we break apart the word, are Servers where domain Name information is retrieved, it points devices and computers in the right direction to find your DNS information. Primarily, you would receive nameservers from a webhost, but you may also create your own if self hosting, or receive nameservers from a Content Delivery Network like Cloudflare, who can be utilized to act as an intermediary between a host and the domain, or for local hosting.

Another way to understand Nameservers is by comparing what they do to a real world scenario. Imagine, if you will, that you are in a large city with a number of different neighborhoods. Every neighborhood has a community center where you can learn more about the locals and their places of interest.

Nameservers are essentially community centers in the digital world. They are specialized computers that store vital data about various internet websites or domains. Your computer can't directly locate a website when you want to visit it. Inquiring, "where can I find this website?," to a nameserver.

Your computer queries a nameserver for the address of the website you want to visit. The nameserver verifies its data before providing your computer with the precise address (also known as an IP address) of the website.

Once your computer has the nameserver's IP address, it can use that address to navigate to the desired website. Therefore, to put it simply, nameservers assist your computer in locating the correct route to the websites you seek, much like community centers assist you in navigating a large city!

To do this for computers to read, nameservers utilize what is called a 'Zone File' to map out the DNS information for the domain. They are also called Start of Authority Records (SOA) by some. 

Consider the following DNS example zone file:

demo dns zone file

This is essentially a yellow pages listing for the domain. Default entries like the administrator's email address, DNS records, and name servers are present in every DNS zone file. You are free to make as many DNS records for as many subdomains as you like; you are not constrained to these default entries. You may notice a lot of similarities with the local hosts file here.

Chances are you won't need to modify a file that looks like this, but it's still useful to understand what is going on. Your DNS editing will likely come in the form of either editing a Zones file, or DNS record on a Content Management System like Cloudflare. 

The image below is for demonstrative purposes only, you do not need to understand it.

basic view of a DNS zone editor

This image is taken from the zone editor utilized by Wallaby Design's web hosting that we offer our clients for websites. You notice in the few records that can be seen that that there are several kinds of records (types), such as Nameservers, Mail Routes, TXT files, and A records. Were we to go to later pages we would also likely find more TXT, A, and CNAME records.

How DNS Works

A DNS, or Domain Name System, is essentially a hosts file that is stored on the internet. It's an address book for a domain that allows the IP Address utilized by the domain to be mapped to specific addresses for users to access. 

The IP Address portion of the DNS comes from either a web host, or if stored locally, the local internet accessible IP Address. While the latter is less encouraged for reliability and security purposes, it is a possible use for a domain name and can be utilized with DNS. 

The DNS information for a domain can be accessed by reading the Nameservers tied to the specific domain.

DNS Name Resolution

DNS Name Resolution, or just DNS Resolution, is the process of translating human-friendly website names (like wallabydesigns.com) into the numerical IP addresses that computers use to locate and connect to specific resources on the internet.

Think of DNS name resolution like looking up a phone number in a phone book. Imagine you want to call your friend Steve, but you only know his name, not his phone number. To make the call, you need to find his phone number in the phone book.

Now, in the digital world, when you type a website address like "wallabydesigns.com" into your web browser, your computer knows the name of the website but not the actual location on the internet. Just like with Steve's phone number, your computer needs to find the website's "phone number," which is its IP address – a unique set of numbers that identifies the website's location on the internet.

DNS Resolution map, showing the journey from entered domain name to end website

Here's how DNS name resolution works:

  1. You type "wallabydesigns.com" in your browser and hit Enter.
  2. Your computer doesn't know the IP address of "wallabydesigns.com," so it asks a special helper called a DNS resolver.
  3. The DNS resolver scours through external DNS servers to find the IP address for "wallabydesigns.com", utilizing the nameserver to find where the DNS information is located.
  4. Querying the nameserver, the DNS resolver finds the IP address for "wallabydesigns.com" and gives it to your computer.
  5. Now that your computer knows the IP address, it can directly connect to the website's location on the internet.

So, DNS name resolution is like the process of finding the "phone number" (IP address) of a website when you only know its name. Just like looking up a friend's number to make a call, DNS helps your computer find the right address to access the websites you want to visit!

Host Name Resolution

The process of converting a user-friendly website name (hostname) into the corresponding numerical IP address is known as host name resolution. Computers use IP addresses to find and connect to specific resources on the internet.

Host name resolution is like finding a house by its nickname in a big city. Imagine you want to visit your friend's house, but you only know their nickname, not the exact address. So, you ask a local guide who knows where all the houses are. 

In the digital world, when you want to go to a website like "wallabydesigns.com," your computer doesn't know the exact location on the internet. It asks a special guide called a DNS server, which acts like the local guide.

The DNS server knows the real address (IP address) of the website, just like the guide knows the real addresses of houses. Once your computer has the IP address, it can find the website, similar to how you'd find your friend's house with the street address provided by the guide. Host name resolution is this process of finding the real internet address using the nickname you know.

Dynamic DNS Resolution

Online DNS records are constantly being updated, but how does the rest of the internet keep up with it? Enter Dynamic DNS Resolution. This method works by dynamically updating a website's domain name to correspond to its changing IP address, making sure that the website is always reachable, even when its location on the internet changes as a result of things like network switches or changes.

Dynamic DNS resolution is like having a personal address updater for your changing location. Imagine you're wanting to meet up with friends, but you're in a large and crowded mall. Instead of constantly telling them what stores you are passing (assuming they are intimately familiar with the mall), you have a helpful service that automatically updates your current address with your nickname, so your friends can always find you. Think 'find a friend' or similar apps. 

In the digital world, Dynamic DNS works similarly. When your device changes its internet address (IP address) because of factors like switching networks, Dynamic DNS automatically updates your website's nickname (domain name) with your current IP address.

This ensures that when people want to reach your website, they always get sent to the right place, even though your online "home" keeps changing its address.

DNS Record Types

You don't need to understand all of these in detail as you may never use some of them, what's left is a quick reference guide for each.

Type Usage
A Address Record. Most often used to translate domain names to IP addresses by mapping Fully Qualified Domain Names (FQDNs) to IPv4 addresses (i.e. 108.162.193.198).
AAAA Quad A Record. Comparable to an A Record, but maps to an IPv6 address. IPv6 is preferred by smartphones if it is available. 
CNAME Canonical Name Record. An alias, not an IP address, that directs users to another domain or subdomain. FQDN to FQDN mapping (see A record) with several hosts at a single location. The ability to make changes without disrupting user bookmarks, etc. makes this record useful for changing an IP address over time.
ANAME Address Name Record: You may use this record type to direct your domain's root to a hostname or FQDN.
SOA Start of Authority Record. Used to store domain information and controls how a DNS zone propagates to backup name servers.
NS Nameserver Record. Specifies the name servers that are responsible for a domain or its subdomains (shouldn't link to a CNAME).
MX Mail Exchange Record. A domain's mail servers are used to determine where to send email, and they should point to a mail server name rather than an IP address.
TXT Text Record. Provides limited human and machine-readable notes that administrators may add. These notes can be used for things like email validation, site and ownership verification, framework policies, Google Console Integration, etc., and they don't need to be formatted in any particular way.
SRV Service Record. Allows services like Voice over Internet Protocol (VoIP) or instant messaging to be forwarded to a different host and port.
PTR Pointer Record. A record that connects IP addresses with domain names and is the opposite of A and AAAA records. In reverse zones, these entries cannot coexist with other DNS record types since they need domain authority.
SPF Sender Policy Framework. Reduces spammers and helps stop email faking.  Since TXT record types have replaced this record type, not all providers may still support it.

Solving Common DNS Issues

If you are reading this, chances are you are having issues with your DNS and need help. Without knowing you specifics it can be hard to provide a one-size-fits-all approach. Fortunately, you don't have to look far to find excellent online resources to help diagnose common DNS issues.

One of my personal favorites is LeafDNS (leafdns.com). LeafDNS works by unravelling your DNS and exploring potential issues as well as pointing out when records are missing or incorrect. It's a great tool that I have used extensively and will continue to use so long as it exists and until human error stops being a thing. If you need help from what you have found there, feel free to send us a contact message and we'll see what we can do to help!