This post is part of our six part series on DNS. The complete list is here: Part 1: DNS Basics, Part 2: DNS and Performance, Part 3: Common Problems and Solutions, Part 4: Best Practices for Setup, Part 5: Monitoring an Anycast Service, Part 6: The Importance of Highly Available DNS.
In the first part of our DNS series, we’re going back to basics. DNS (or Domain Name System if you want to get fancy) is like address book of the internet. You (the client) wants to get somewhere so you lookup a name in the book and you find the address listing where the actual location of your request is. DNS does the same thing with domain names (like google.com) and IP addresses which are the addresses of servers.
Every connection that doesn’t use an actual IP address starts with a round trip through DNS. It makes it easier for humans like us to use memorable names to talk to machines. It’s important and has the potential to make all of your infrastructure unreachable yet we don’t give it as much credit as it deserves.
What are the key components of DNS?
There’s a few layers and entities involved with resolving a host name to an IP address:
Registries (or NICs): These are the companies that manage the registration of domains for all the top-level domains like .com, .net and yes…. .ninja. They maintain the database of the owner information and authoritative nameservers for each domain. Each TLD has a different registry running it, although there are a few companies who operate multiple.
The registries, sell names off of their top level to…
Registrars: These companies act as a broker between the registries and the end user. Registrars abstract away all the technical differences when dealing with different registry backends and provide you with an easy way to search for availability across all top level domains. GoDaddy is the world’s largest domain name registrar and they also provide…
Authoritative DNS Services: Companies provide these services to clients to resolve names to IP addresses. Sometime registrars and hosting/IaaS providers bundle this service with their products but there are many independent providers who do so as well with different pros and cons (more on this later?). Amongst the hundreds of companies who provide authoritative DNS, there are some heavy hitters like DynDNS and Cloudflare.
When you type a domain name into the address bar of your browser and hit ‘Enter’, before it does anything else, it needs to know where it’s going so it queries the authoritative DNS to find out what IP address the name points to. This is the simple version, but for a great animation that explains this in-depth, check out this post from VeriSign.
Hopefully, it’s clear how important DNS is. We say it’s the backbone of the internet because if your DNS goes down, it doesn’t really matter if the your infrastructure is up and running and performing well because no one can find it.
So, why doesn’t DNS get more attention?
It’s old. DNS has been around since the 80s and, for the most part, it just works. People tend to take it for granted and they don’t pay a lot of attention to it even though their business/infrastructure availability hinges on it.
There’s a few ways to give DNS the attention it deserves:
Select your authoritative DNS provider carefully
DNS providers run the gamut from the ones that are baked into the offering from the big name registrars to specialized, highly distributed providers like DynDNS or DNS services from cloud providers like AWS and GCP.
Special features like AnyCast (we’ll cover that in a few weeks), APIs for automation and scalability and the ability to use a larger number of nameservers are all key factors to consider when evaluating a provider.
Eliminating a single point of failure
Beyond choosing the right provider with the features you require, there’s another way to give DNS the respect it deserves. Use more than one provider! We’ll get into this in detail in Part 2 of our DNS series (sign up to get notified in the sidebar).
Set appropriate TTLs
TTLs are settings that are a part of every record in your DNS zone file and they are the way you tell downstream DNS resolvers or caching servers how long to store a record before checking back. They’re use to strike a balance between performance and how realtime your settings are.
How you set up your TTLs (time-to-lives) will change for each record in your DNS Zone and will be different for every company but you should definitely pay attention to them to tweak your DNS out of its default settings into something that’s working in a more specific way.
Setting up your TTLs requires you to decide on that balance between performance and “real-timeness” that you require for each of your specific services. For a more in-depth look, you can check out this article from our friends (and customers) at Media Temple.
I hope this article gives you the basics you need to revisit how you look at DNS, understand it’s importance and lay the groundwork for the rest of our DNS series. Next week we’ll be sharing some insights into how DNS affects performance.
Sign up here and we’ll remind you when the next post goes live and you’ll get early access to a free tool we’re building to automate the management of multiple DNS providers.