¿Qué es la propagación DNS?
La propagación DNS se refiere al tiempo que tarda en que los cambios realizados en registros DNS se reconozcan en toda internet. Cuando actualizas registros DNS (cambios de servidores de nombres, actualización de registros A, modificación de registros MX), los cambios no tienen efecto instantáneamente: deben propagarse a través del sistema DNS jerárquico a medida que las cachés expiran y se actualizan.
Entendiendo "Propagación"
El término "propagación" es algo engañoso: los cambios DNS no se "propagan" o distribuyen activamente. En su lugar:
1. Actualizas registros en tu servidor de nombres autorizado
2. Las copias en caché expiran basándose en TTL (Time To Live)
3. Las nuevas consultas obtienen registros actualizados de servidores autorizados
4. Las copias antiguas en caché continúan sirviendo hasta que expira el TTL
Es más preciso decir "expiración de caché DNS" que "propagación", pero el término propagación se usa ampliamente.
Cómo funcionan los cambios DNS
El proceso de actualización
Paso 1: Actualizar registros DNS
example.com A record: 203.0.113.50 → 203.0.113.51
Paso 2: El servidor de nombres autorizado sirve el nuevo registro inmediatamente
Paso 3: Las copias en caché existentes siguen siendo válidas hasta que expire el TTL
Paso 4: Las nuevas consultas después de la expiración del TTL reciben el registro actualizado
Paso 5: Todas las cachés finalmente expiran y se actualizan
→ "Propagación completada"
Ejemplo de línea de tiempo
Hora: 10:00 - DNS actualizado (TTL: 300s / 5 minutos)
Resolver A (almacenado en caché a las 09:58):
09:58 - IP antigua en caché, expira a las 10:03
10:03 - Caché expira, consulta de nuevo, obtiene IP nueva
Resolver B (almacenado en caché a las 10:01):
10:01 - IP antigua en caché, expira a las 10:06
10:06 - Caché expira, consulta de nuevo, obtiene IP nueva
Resolver C (consulta a las 10:05):
10:05 - Sin caché, consulta inmediatamente, obtiene IP nueva
Todos los resolutores tienen IP nueva a las: 10:06
Tiempo de propagación: 6 minutos (peor caso basado en TTL)
Factores que afectan el tiempo de propagación
TTL (Time To Live)
El factor más importante:
| Valor TTL | Tiempo de propagación | Caso de uso |
|---|---|---|
| 60s | 1-2 minutos | Migraciones activas, balanceo de carga |
| 300s (5 min) | 5-10 minutos | Cambios de producción, default razonable |
| 3600s (1 hora) | 1-2 horas | Infraestructura estable |
| 86400s (24 horas) | 24-48 horas | Registros raramente cambiados |
Cambios de servidor de nombres
Cambiar servidores de nombres tarda más que otros cambios DNS:
Nivel de registro: 24-48 horas (caché de servidor de nombres TLD)
Nivel de resolver: Basado en TTL de registro NS
Tiempo total: Hasta 48 horas en el peor de los casos
Comportamiento de ISP y resolver
No todos los resolutores DNS respetan los valores TTL:
Resolutores bien comportados: Google (8.8.8.8), Cloudflare (1.1.1.1), OpenDNS- Respetan estrictamente el TTL
- Propagación rápida
- Pueden ignorar TTLs bajos
- Almacenan en caché más tiempo que lo especificado
- Pueden retrasar la propagación por horas
Distribución geográfica
Diferentes regiones se actualizan en diferentes momentos basándose en caché del resolver local:
América del Norte: 10:05 - Actualizado
Europa: 10:08 - Actualizado
Asia: 10:12 - Actualizado
Almacenamiento en caché del lado del cliente
Incluso después de que los servidores DNS se actualicen, las cachés locales pueden retener valores antiguos:
- Caché del navegador: 60 segundos típicamente
- Caché del SO: Minutos a horas
- Caché de aplicación: Varía según la aplicación
Comprobar propagación DNS
Verificadores de propagación en línea
whatsmydns.net: Muestra resolución DNS desde 20+ ubicaciones en todo el mundo dnschecker.org: Verifica registros A, AAAA, CNAME, MX, TXT globalmente DomScan Health Check:curl "https://domscan.net/v1/health?domain=example.com"
# Muestra la configuración DNS actual
Comprobaciones de línea de comandos
Comprobar múltiples resolutores:# Google DNS
dig @8.8.8.8 example.com
# Cloudflare DNS
dig @1.1.1.1 example.com
# Tu ISP (sin especificar servidor @)
dig example.com
# Comparar resultados
Consultar servidor de nombres autorizado directamente:
# Encontrar servidores de nombres
dig example.com NS
# Consultar NS autorizado directamente
dig @ns1.example.com example.com
Esto muestra la "verdad" inmediatamente, sin caché involucrada.
Comprobar desde múltiples ubicaciones
# Usando curl con DNS sobre HTTPS
curl -H 'accept: application/dns-json' 'https://cloudflare-dns.com/dns-query?name=example.com&type=A'
Minimizar tiempo de propagación
Antes de realizar cambios
Paso 1: Reducir TTL (24-48 horas antes del cambio)Anterior: example.com. 3600 IN A 203.0.113.50
Nueva: example.com. 300 IN A 203.0.113.50
^^^
Reducido a 5 minutos
Paso 2: Esperar a que expire el TTL anterior
Esperar la duración completa del TTL anterior (3600s = 1 hora)
Paso 3: Realizar cambio DNSexample.com. 300 IN A 203.0.113.51
Paso 4: Monitorizar propagación
Comprobar resolutores globalmente
Paso 5: Restaurar TTL (después de confirmar éxito)example.com. 3600 IN A 203.0.113.51
Durante cambios
Usar DNS anycast: Proveedores como Cloudflare utilizan redes anycast que se actualizan casi instantáneamente en toda su red global Monitorizar continuamente: Rastrear la propagación en regiones clave y resolutores Plan de reversión: Mantener la infraestructura antigua en funcionamiento hasta que la propagación sea completaEscenarios comunes de propagación
Cambiar registro A
Tiempo esperado: 5-30 minutos (basado en TTL)# Anterior
example.com → 203.0.113.50
# Después
example.com → 203.0.113.51
# Propagación: 1x duración de TTL
Cambiar registro MX
Tiempo esperado: 5-30 minutos (basado en TTL) Riesgo: El correo puede entregarse al servidor antiguo durante la propagación Mitigación: Mantener servidor de correo antiguo activo durante 24-48 horasCambiar servidores de nombres
Tiempo esperado: 24-48 horas¿Por qué tanto tiempo?
- El registro de TLD almacena en caché registros NS
- El TTL de registro a menudo es de 24-48 horas
- Sin control sobre la caché del registro
Mejor práctica: Configurar todos los registros en nuevos servidores de nombres antes de cambiar
Agregar nuevo subdominio
Tiempo esperado: Instantáneo a 1 hora Trampa: Almacenamiento en caché negativoSi el subdominio fue consultado y no existía:
→ NXDOMAIN en caché (TTL mínimo SOA)
→ El nuevo subdominio no se resolverá hasta que expire la caché
Mitigación: Reducir TTL mínimo de SOA antes de agregar nuevos registros
Solucionar problemas de propagación
Cambio no se está propagando
Comprobación 1: Verificar servidor de nombres autorizadodig @ns1.example.com example.com
# Debe mostrar nuevo valor
Comprobación 2: Verificar TTL
dig example.com | grep -i ttl
Comprobación 3: Comprobar SOA para caché negativo
dig example.com SOA
# Buscar campo TTL mínimo
Comprobación 4: Vaciar caché local
Limpiar cachés de navegador, SO y aplicación
Propagación parcial
Síntoma: Algunos usuarios ven nuevos registros, otros ven antiguos Causa: Diferentes resolutores almacenados en caché en diferentes momentos Solución: Esperar duración máxima de TTL y luego vaciar cachés del clientePropagación atascada
Síntoma: Días después, algunos resolutores todavía sirven registros antiguos Causa: El resolver del ISP ignora el TTL o está mal configurado Solución:1. Verificar que el servidor de nombres autorizado sea correcto
2. Contactar al ISP si persiste
3. Los usuarios pueden cambiar a DNS público (8.8.8.8, 1.1.1.1)
Propagación DNS vs TTL de caché
| Concepto | Qué es | Duración |
|---|---|---|
| TTL | Cuánto tiempo un registro puede almacenarse en caché | Establecido por propietario de dominio |
| Propagación | Tiempo para que todas las cachés expiren | Aproximadamente 2x TTL |
| TTL del servidor de nombres | Cuánto tiempo se almacenan en caché los registros NS | A menudo 24-48 horas (registro) |
| Caché negativo | Cuánto tiempo se almacena NXDOMAIN en caché | TTL mínimo SOA |
Mejores prácticas
1. Reducir TTL antes de cambios: Reducir TTL 24-48 horas antes de actualizar DNS
2. Usar TTLs apropiados: Balance entre rendimiento (TTL alto) vs flexibilidad (TTL bajo)
3. Monitorizar globalmente: Comprobar DNS desde múltiples regiones geográficas
4. Mantener servicios antiguos ejecutándose: Mantener servidores anteriores hasta que la propagación sea completa
5. Documentar cambios: Rastrear qué cambió y cuándo para solucionar problemas
6. Probar minuciosamente: Verificar que los nuevos registros DNS funcionen antes de cambiar
7. Comunicar con usuarios: Advertir de posibles interrupciones breves
8. Usar DNS gestionado: Los proveedores con redes anycast minimizan el tiempo de propagación
9. Automatizar monitoreo: Configurar alertas para cambios DNS y estado de propagación
10. Plan de reversión: Saber cómo revertir cambios en caso de problemas
Lista de verificación de propagación
☐ Reducir TTL 24-48 horas antes del cambio
☐ Esperar a que expire el TTL anterior
☐ Realizar cambio DNS
☐ Verificar en servidores de nombres autorizados
☐ Comprobar múltiples resolutores públicos
☐ Probar desde múltiples ubicaciones geográficas
☐ Monitorizar durante 2x duración de TTL
☐ Verificar que no hay errores reportados
☐ Restaurar TTL más alto si se desea
☐ Documentar finalización del cambio
La propagación DNS es una consecuencia natural del almacenamiento en caché DNS: comprender el comportamiento del TTL y planificar cambios en consecuencia garantiza actualizaciones suaves y predecibles con mínimas interrupciones.