What is DNS propagation delay? How can the IP address of a domain be changed with less downtime?
DNS propagation delay can happen due to two reasons.
- Name server changes at your registrar.
- DNS caching due to TTL value set up in resource records.
We have very little control on the first case as any changes done at registrar may take 24 to 48 hours to propagate on Internet (though it’s generally nowhere near this long). We can manage the downtime of site in the second case.
To reduce the DNS lookup overhead, every name servers cache the DNS records fetched at a time. The time for which these values remain in cache is controlled by the TTL (Time to Live) value set in these resource records. For example, if the A record of the site has a TTL value, say 14400 seconds (4 hours), then this result will stay in the DNS cache for 4 hours once fetched from the authoritative name servers. If the IP address of this site is changed in between, the name server which caches the previous result will not be able to see this change as it is still fetching the details from it’s local cache.
So, to reduce the downtime due to DNS caching, we need to reduce the TTL value in resource records. The procedure mentioned below helps to change the IP address of site with less downtime. It assumes that the present TTL value set is 14400 seconds.
- Change the TTL value to 300 seconds and wait for 14400 seconds for the new TTL value to be effective.
- Change the IP address of site. This new IP address will be propagated on Internet within 5 minutes (300 seconds) as name servers will cache the result only for 5 minutes.
- Once the IP address is changed and site is accessible, you may change the TTL value back to 14400 seconds. This will help to reduce the DNS queries on the authoritative name servers.