Cos'è la Propagazione DNS?
La propagazione DNS si riferisce al tempo necessario per le modifiche effettuate ai record DNS da riconoscere in tutta la rete. Quando si aggiornano i record DNS (cambiando i nameserver, aggiornando i record A, modificando i record MX), i cambiamenti non hanno effetto istantaneamente—si devono propagare attraverso il sistema DNS gerarchico mentre le cache scadono e rinfrescano.
Comprendere "Propagazione"
Il termine "propagazione" è un po' fuorviante: i cambiamenti del DNS non vengono attivamente "propagati" o diffusi. Invece:
1. # You update records # # at your autorevole nameserver #
2. Copie accese scadono in base a TTL (Time To Live)
3. Nuovi quesiti cercano record aggiornati da server autorevoli
4. Le vecchie copie cache continuano a servire fino alla scadenza del TTL
E 'più esatto dire "sperazione cache DNS" che "propagazione", ma il termine propagazione è ampiamente utilizzato.
Come funzionano le modifiche DNS
Il processo di aggiornamento
Step 1: Update DNS records
example.com A record: 203.0.113.50 → 203.0.113.51
Step 2: Authoritative nameserver immediately serves new record
Step 3: Existing cached copies remain valid until TTL expires
Step 4: New queries after TTL expiration receive updated record
Step 5: All caches eventually expire and refresh
→ "Propagation complete"
Esempio di timeline
Time: 10:00 - DNS updated (TTL: 300s / 5 minutes)
Resolver A (cached at 09:58):
09:58 - Cached old IP, expires 10:03
10:03 - Cache expires, queries again, gets new IP
Resolver B (cached at 10:01):
10:01 - Cached old IP, expires 10:06
10:06 - Cache expires, queries again, gets new IP
Resolver C (queries at 10:05):
10:05 - No cache, queries immediately, gets new IP
All resolvers have new IP by: 10:06
Propagation time: 6 minutes (worst case based on TTL)
Fattori Affecting Tempo di Propagazione
TTL (tempo per vivere)
Il singolo fattore più importante:
| Valore TTL | Tempo di propagazione | Utilizzare il caso |
|---|---|---|
| 60 | 1-2 minuti | Migrazioni attive, bilanciamento del carico |
| 300s (5 min) | 5-10 minuti | Cambiamenti di produzione, ragionevole default |
| 3600 (1 ora) | 1-2 ore | Infrastrutture stabili |
| 86400s (24 ore) | 24-48 ore | Raramente cambiato record |
Cambiamenti del nameserver
Cambiare i nameserver richiede più di altre modifiche DNS:
Registry Level: 24-48 hours (TLD nameserver cache)
Resolver Level: Based on NS record TTL
Total Time: Up to 48 hours worst case
ISP e Resolver Behavior
Non tutti i risolutori DNS rispettano i valori TTL:
Risolvere Ben Comportati: Google (8.8.8.8), Cloudflare (1.1.1.1), OpenDNS- Rispettare rigorosamente TTL
- Veloce propagazione
- Può ignorare i bassi TTL
- Cache più lunghe di quanto specificato
- Può ritardare la propagazione per ore
Distribuzione geografica
Varie regioni aggiornano in tempi diversi in base alla cache dei risolutori locali:
North America: 10:05 - Updated
Europe: 10:08 - Updated
Asia: 10:12 - Updated
Caching del cliente
Anche dopo l'aggiornamento dei server DNS, le cache locali possono conservare valori vecchi:
- cache del browser: 60 secondi tipicamente
- - Si'. Minuti alle ore
- cache delle applicazioni: Varies by app
Controllo della Propagazione DNS
Online Propagation Checkers
# whatsmydns.net # Mostra risoluzione DNS da 20+ sedi in tutto il mondo
# dnschecker.org # A, AAAA, CNAME, MX, TXT record a livello globale
* DomScan Health Check:
curl "https://domscan.net/v1/health?domain=example.com"
# Shows current DNS configuration
Controlli della linea di comando
Controllare più risolutori:# Google DNS
dig @8.8.8.8 example.com
# Cloudflare DNS
dig @1.1.1.1 example.com
# Your ISP (no @ server specified)
dig example.com
# Compare results
Riservatore autorevole della regina direttamente:
# Find nameservers
dig example.com NS
# Query authoritative NS directly
dig @ns1.example.com example.com
Questo mostra la "verità" immediatamente, nessuna cache coinvolta.
Check from Multiple Locations
# Using curl with DNS over HTTPS
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=example.com&type=A'
Tempo di Propagazione Minimizzante
Prima di fare cambiamenti
Step 1: Lower TTL (24-48 ore prima del cambiamento)Old: example.com. 3600 IN A 203.0.113.50
New: example.com. 300 IN A 203.0.113.50
^^^
Reduced to 5 minutes
Aspetta che il vecchio TTL scada.
Attendere la durata completa del vecchio TTL (3600s = 1 ora)
♪Step 3: Make DNS change
example.com. 300 IN A 203.0.113.51
Step 4: Monitora la propagazione
Controllare i risolutori a livello globale
Step 5: Ripristinare TTL (dopo aver confermato il successo)example.com. 3600 IN A 203.0.113.51
Durante le modifiche
Utilizzare qualsiasi DNS: I provider come Cloudflare utilizzano le reti di cloudcast che aggiornano in modo quasi immediato sulla loro rete globale#Monitor continuamente # Tracciare la propagazione tra le regioni chiave e i risolutori
Hai un piano di rollback? Mantenere la vecchia infrastruttura in esecuzione fino a quando la propagazione completa
Scenari di propaganda comune
Cambiare un record
Tempo previsto: 5-30 minuti (basato su TTL)# Before
example.com → 203.0.113.50
# After
example.com → 203.0.113.51
# Propagation: 1x TTL duration
Cambiare il record MX
Tempo previsto: 5-30 minuti (basato su TTL) Risk Email può essere consegnato al vecchio server durante la propagazioneMitigazione. Mantenere il vecchio server di posta attivo per 24-48 ore
Cambiare i Nameserver
Tempo previsto: 2448 oreWhy so long?
- TLD registry caches NS records
- Registry TTL often 24-48 hours
- No control over registry cache
Best Practice: Configura tutti i record in nuovi nameserver prima di passare
Aggiungere il nuovo subdominio
Tempo previsto: istantaneo a 1 oraCaching negativo
If subdomain was queried and didn't exist:
→ NXDOMAIN cached (SOA minimum TTL)
→ New subdomain won't resolve until cache expires
Mitigazione. Abbassare il TTL minimo SOA prima di aggiungere nuovi record
Risoluzione dei problemi di propaganda
Cambiare Non Propagare
Check 1: Verificare autorevole nameserverdig @ns1.example.com example.com
# Should show new value
Verificare TTL
dig example.com | grep -i ttl
Check 3: Controllare SOA per la cache negativa
dig example.com SOA
# Look at minimum TTL field
Check 4: Flush local cache
Cancella browser, OS e cache delle applicazioni
Propagazione parziale
Symptom: Alcuni utenti vedono nuovi record, altri vedono vecchiPerche'... Diverse risoluzioni memorizzate in tempi diversi
# Solution # Attendere la durata massima di TTL, quindi svuotare le cache dei client
Propagazione Stuck
Symptom: Giorni dopo, alcuni risolutori ancora servono vecchi record**********: ISP risolver ignorando TTL o mal configurato
# Solution #
1. Verificare autorevole nameserver è corretto
2. Contattare ISP se persistente
3. Gli utenti possono passare al DNS pubblico (8.8.8.8, 1.1.1.1)
Propagazione DNS vs Cache TTL
| Concezione | Che cosa è | Durata |
|---|---|---|
| TTL | Quanto tempo un record può essere memorizzato | Set per proprietario di dominio |
| Propagazione | Tempo per tutte le cache per scadere | Circa 2x TTL |
| Nameserver TTL | Quanto tempo i record NS sono memorizzati nella cache | Spesso 24-48 ore (registrazione) |
| Cache negativa | Quanto tempo NXDOMAIN è memorizzato nella cache | TTL minimo SOA |
Migliori Pratiche
1. Torre TTL prima delle modifiche Ridurre TTL 24-48 ore prima degli aggiornamenti DNS
2. Utilizzare i TTL appropriati: prestazioni di bilanciamento (high TTL) vs flessibilità (low TTL)
3. Monitor globalmente Controlla DNS da più regioni geografiche
4. I vecchi servizi sono in esecuzione. Mantenere i server precedenti fino alla completa propagazione
5. # I cambiamenti del documento # Tracciare ciò che è cambiato e quando per la risoluzione dei problemi
6. Test accuratamente Verificare nuovi record DNS prima di passare
7. Comunicare con gli utenti: Avviso di potenziali brevi interruzioni
8. Utilizzare DNS gestito: I fornitori con le reti di qualsiasicast minimizzano il tempo di propagazione
9. Monitoraggio automatico** Impostare gli avvisi per le modifiche DNS e lo stato di propagazione
10. Hai un piano di rollback? Sapere come ripristinare i cambiamenti se si presentano problemi
Propagazione Lista di controllo
☐ Lower TTL 24-48 hours before change
☐ Wait for old TTL to expire
☐ Make DNS change
☐ Verify on authoritative nameservers
☐ Check multiple public resolvers
☐ Test from multiple geographic locations
☐ Monitor for 2x TTL duration
☐ Verify no errors reported
☐ Restore higher TTL if desired
☐ Document change completion
La propagazione DNS è una conseguenza naturale della cache DNS, indipendentemente dal comportamento TTL e dai cambiamenti di pianificazione, assicura quindi aggiornamenti lisci e prevedibili con una minima interruzione.