The Domain Name System (DNS) is what makes the internet go ‘round. Without it, websites, email, and applications couldn’t resolve and communication as we know it would cease to exist. As integral as DNS is to the web, it’s also one of the most common causes for a domain to “malfunction.” While there are many ways DNS can go wrong, in this blog we’re focusing on DNS propagation and how it affects your domain.
But as they say, you gotta learn to crawl before you can walk...
While you don’t need to be a DNS wizard to fix most errors due to propagation, it’s helpful to know a little about how DNS works first.
So here’s a DNS crash course:
You can think of DNS as a dynamically changing digital phone book for devices. Since (most) people don’t speak “math,” DNS was developed as a way to convert human-readable names into numerical IP addresses, which allows devices to communicate. In other words, while we see websites as “example.com” (domain name), devices see it as “18.104.22.168 or 2001:0db8:85a3:0000:0000:8a2e:0370:7334” (IP address). You can imagine how difficult it would be if the only way we could access a website was by using the IP address—especially considering the volume of websites and applications we’ve grown accustomed to using today.
To learn more about the DNS process, check out our DNS Explained video, which explains DNS it all in six entertaining minutes! Seriously. Even if you’re a DNS pro, it’s worth a watch.
DNS propagation is the amount of time it takes updates to DNS records to reflect across all servers on the internet. Changes aren’t instantaneous because DNS record information is cached. How long data is cached is determined by the time to live (TTL) value of the applicable DNS record.
One of the ways DNS is able to provide a fast and seamless user experience is due to cache (pronounced cash). When a person first visits a webpage, the person’s browser caches the information for later use. This data is stored in your browser cache, your computer cache, and is cached by multiple DNS servers. It’s this value that tells your computer, browser, and DNS servers when they need to drop what’s in cache and retrieve updated information for a domain.
Tip: For a more in-depth look at how caching works, visit our What is Caching blog.
So what does all this have to do with DNS propagation and your domain not working?
It could be nothing. Or it could be everything.
Chances are, you’ve probably been greeted with the dreaded message: This webpage is not available (DNS_Probe_Finished_No_Internet) when trying to access a domain before.
This might even be the reason you’re here.
While not foolproof, there are usually two culprits that cause the above or similar DNS error: Cache and time to live (TTL). Both of these things affect propagation time and can cause your website to become temporarily unavailable.
Let’s look at these issues more closely:
Because DNS records are cached for quicker retrieval, new content may not display for all users at the same time. Even worse, a change in domain mapping can render your website unavailable. For example, if you recently updated the IP address for your domain, DNS servers will still send queries to the old IP until the TTL for the records expire. As TTL setting can be as long as 86,400 seconds (24 hours), and in rare cases, years, this is an extremely common cause for “web page not available” errors.
One solution to this issue is to plan updates accordingly by adjusting the TTL to a shorter setting beforehand. This way, the DNS record information will expire faster and trigger DNS resolvers to ask the authoritative DNS server for new information. Another way to circumvent caching issues when updating your domain is by using Failover. If your primary resource is unavailable, web traffic will automatically be rerouted to an alternative endpoint. This will eliminate downtime altogether.
Despite your best-laid plans, some DNS servers decide not to play along. While not a lot, there are some DNS resolvers that ignore TTL settings shorter than 24 hours. On rare occasions, this “cold shoulder” can last as long as 48 hours. This usually occurs due to an administrator trying to save busy servers from becoming overloaded. Unfortunately, this is out of your control and it typically takes up to 48 hours for your domain changes to resolve and fully propagate across these servers. The good news is not all users will be affected. The resolvers that honor TTL settings will of course initiate a new DNS lookup and send the requester to the right destination.
If, after 48 hours the problem persists, it’s more than likely a configuration problem at your domain registrar.
Luckily, there are ways to check if your DNS record changes have propagated globally. Below is a list of free online tools you can use to specifically verify propagation:
DNS Tool Box by Constellix
The key takeaway with how DNS propagation affects your domain is DNS caching and TTL settings. If you plan ahead of time, you can adjust TTL settings to expire faster so that most devices and DNS resolvers will need to request new information from the domain’s authoritative server. Failover can also help you avoid this problem when making changes to your primary endpoint as traffic will be redirected to your alternative resource. Just remember that there are some DNS resolvers that ignore TTL settings less than 24 hours, in which case, you’ll need to wait for these to propagate. If you’re still experiencing domain issues 48 hours after a DNS record change, be sure to look into potential problems at the registrar level.
Stay up to date on the latest DNS Made Easy resources and news