What is DNS propagation and why does it take so long?
'DNS propagation' is a term used to describe the time frame after a change is made to the IP address where a domain resolves to and when the world fully recognizes that a change has been made. This is a sort of misnomer, however, as it implies that DNS records are “pushed” from your domain’s nameservers to all of the other DNS servers in the world, when in fact it’s more of a system of requests.
Most Internet Service Providers have local DNS servers that can be equated to an internet phone book. They keep track of and translate the IP address that is associated with your domain. When you type the text of your domain into a browser and hit Enter, your local ISP looks up where that domain name resolves to in terms of an IP address on a cached DNS server.
DNS records are stored in cache mainly to improve performance of DNS queries. Every DNS record has a Time to Live (TTL) value, which is the length of time DNS servers are requested to store that record in cache before checking to see if it is still valid. Even if a record is changed, DNS servers will continue working with its former value from cache until this time has passed.
When you request a website in a browser, there are up to four locations that may be involved in determining where your request should resolve:
- Your local computer’s DNS cache
- Your ISP’s DNS cache
- The main ICANN registered DNS server for that domain’s TLD
- Your domain’s assigned nameservers
On your local computer, records are generally cached using the TTL, and the record is only re-checked once either that TTL has expired, or your cache is flushed manually. (If you need assistance with flushing your computer or server’s local cache, contact Cozaq Support and we’ll be happy to assist you with that.)
At an ISP, the age of a cached record may be compared against the TTL specified for that record, or their own internal setting for how long records should be cached. In some cases, this may be 24-48 hours. So even if your TTL is set for only 1 hour, it is possible that individual ISPs may not recheck and cache a new record for much longer.
When an ISP needs to look up a DNS record, they check the primary DNS servers for that TLD to see what nameservers it should ask. The ISP then asks that domain’s nameservers for the IP address for that website, and caches this new record so that other checks can be completed more quickly.
This is the essence of DNS propagation - it is the time required for DNS servers worldwide to allow their cached information for a domain name to expire.
In the past a DNS change required up to 72 hours to propagate worldwide, however more recently these time frames have been cut down to a matter of hours. In general we recommend that DNS changes be done in off peak business hours preferably at the start of the weekend to limit the interruption of service that may occur while DNS propagates.