Features Pricing Docs Blog Log In Get Started Free

DNS Propagation & Troubleshooting

DNS Propagation and Common Issues

After changing DNS records, the changes need to propagate across the global DNS system. Understanding how this works helps you troubleshoot issues faster.

How DNS Propagation Works

When you change a DNS record, the old record is cached by recursive resolvers worldwide. Each record has a TTL that tells resolvers how long to cache it. Propagation is not a push — resolvers simply stop using the old cached record when the TTL expires.

Checking DNS Records

Use dig to query specific nameservers:

# Query your authoritative nameserver directly
dig @ns1.yourdns.com example.com A

# Query Google's public DNS
dig @8.8.8.8 example.com A

# Query Cloudflare's DNS
dig @1.1.1.1 example.com A

# Short format
dig +short example.com A

If your authoritative nameserver shows the new IP but public resolvers show the old one, propagation is still in progress.

Checking Nameservers

dig NS example.com +short

This shows which nameservers are authoritative for your domain. If you recently changed nameservers (e.g., to Cloudflare), this change itself takes up to 48 hours.

Flushing Local DNS Cache

Your local machine caches DNS too. Flush it to see updated records immediately:

# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

# Windows
ipconfig /flushdns

# Linux (systemd-resolved)
sudo systemd-resolve --flush-caches

Common DNS Issues

Issue Symptom Fix
High TTL on old record Old IP still resolves after hours Lower TTL to 300 before making changes, wait for old TTL to expire
Wrong nameservers Changes not taking effect at all Update nameservers at your registrar
CNAME at root MX records break, email stops Use A record at root, CNAME only for subdomains
Conflicting records Intermittent resolution Remove duplicate A or AAAA records

Pro Tips

  • Lower TTL 24 hours before migration — set TTL to 300 seconds so the old record expires quickly
  • Use online propagation checkers — tools like whatsmydns.net show DNS status across multiple global locations
  • Test with specific resolvers — different ISPs have different cache behavior