¿Cuánto tardan en propagarse los registros DNS?

68

Esta es una pregunta canónica sobre la propagación de DNS

¿Cuánto tiempo tarda en propagarse los distintos tipos de registros?
¿Algunos se propagan más rápido que otros?
¿Por qué lleva tiempo propagar los registros DNS y cómo funciona?

Comunidad
fuente
1
Nota: Históricamente, hubo una diferencia notable y significativa en el tiempo que lleva actualizar diferentes tipos de registros (dependiendo de quién los guardó y tal). Este ya no es el caso hoy.
Chris S
44
Cuando ppl usa la palabra "propagar" para DNS, muestra claramente que no saben qué es DNS y cómo funciona. Esperemos que la documentación se "propague" lo suficientemente rápido (cruzando los dedos).
Poige
3
@tonygil Por favor, vea el comentario de Poige. No existe la propagación de DNS. Además, los ISP no controlan los servidores raíz. Si los servidores DNS de esos ISP están almacenando en caché más tiempo que el TTL del registro, entonces están violando RFC. Parece que tienes varios malentendidos sobre cómo funciona DNS; pero las violaciones de RFC generalmente romperán la forma en que se supone que debe funcionar. Esto no tiene nada que ver con los Estados Unidos o Europa.
Chris S
1
@tonygil: La "ciberpolicia" para "actualizarlos" son todos los administradores de sistemas, administradores de redes, etc., que ejercen presión social sobre los malos actores. Internet funciona porque todos estamos de acuerdo en que debería hacerlo. Los mejores intereses de nuestros usuarios, redes, etc., están en el "mejor interés" manifiesto de Internet. re: "los usuarios no son tecnogurus" - Este es un sitio para administradores de sistemas profesionales y no para usuarios finales. Francamente, espero que los administradores de sistemas sean una especie de "tecnoguru" (para usar su terminología). Se supone que los administradores de sistemas , por ocupación, deben preocuparse por cómo funcionan estas cosas.
Evan Anderson el
@EvanAnderson, estoy completamente de acuerdo en que la presión genera cambios. Por otro lado, la realidad es que los administradores de sistemas perezosos o incompetentes están en hordas. y cuanto más te alejes de Estados Unidos y Europa, más frecuentes serán. sus expectativas están bien en los Estados Unidos, pero no son factibles en la mayoría de las partes del mundo real, donde los administradores de sistemas no preparados son la regla. entonces, mientras esperas que todo esté bien, deberías lidiar con el mundo real, donde NO lo están. de todos modos, hice mi punto, tú hiciste el tuyo. aceptemos estar en desacuerdo.
Tony Gil

Respuestas:

71

La "propagación de DNS" no es un fenómeno real, per se. Más bien, es el efecto manifiesto de la funcionalidad de almacenamiento en caché especificada en el protocolo DNS. Decir que los cambios "se propagan" entre los servidores DNS es una falsedad conveniente que podría decirse que es más fácil de explicar a los usuarios no técnicos que describir todos los detalles del protocolo DNS. Sin embargo, no es realmente cómo funciona el protocolo.

Los servidores DNS recursivos realizan consultas en nombre de los clientes. Los servidores DNS recursivos, generalmente administrados por ISP o departamentos de TI, son utilizados por las computadoras del cliente para resolver los nombres de los recursos de Internet. Los servidores DNS recursivos almacenan en caché los resultados de las consultas que realizan para mejorar la eficiencia. Las consultas de información ya almacenada en caché se pueden responder sin realizar consultas adicionales. Se supone que la duración, en segundos, que se almacena en caché un resultado se basa en un valor configurable llamado Tiempo de vida (TTL). Este valor es especificado por el servidor DNS autorizado para el registro consultado.

No hay una respuesta única para todas las preguntas que se hacen porque el DNS es un protocolo distribuido. El comportamiento de DNS depende de la configuración del servidor DNS autorizado para un registro dado, la configuración de servidores DNS recursivos que realizan consultas en nombre de las computadoras cliente y la funcionalidad de almacenamiento en caché de DNS incorporada en los sistemas operativos de las computadoras cliente.

Es una buena práctica especificar un valor TTL lo suficientemente corto como para acomodar los cambios diarios necesarios en los registros DNS, pero lo suficientemente largo como para crear un "triunfo" en el almacenamiento en caché (es decir, no tan corto como la caducidad del caché demasiado rápido para proporcionar cualquier mejora de eficiencia). Emplear una estrategia equilibrada con valores TTL resulta en una "victoria" para todos. Reduce la carga y la utilización del ancho de banda para los servidores DNS autorizados para un dominio determinado, los servidores raíz y los servidores TLD. Reduce la utilización del ancho de banda ascendente para el operador del servidor DNS recursivo. Resulta en respuestas de consulta más rápidas para computadoras cliente.

A medida que se establece el TTL de un registro DNS, la carga y el uso de ancho de banda más bajos en los servidores DNS autorizados aumentarán porque los servidores DNS recursivos no podrán almacenar en caché el resultado durante un período prolongado. Como el TTL de un registro es mayor, los cambios en los registros no parecerán "surtir efecto" rápidamente porque las computadoras cliente continuarán recibiendo los resultados almacenados en caché almacenados en sus servidores DNS recursivos. Establecer el TTL óptimo se reduce a un acto de equilibrio entre la utilización y la capacidad de cambiar registros rápidamente y ver esos cambios reflejados en los clientes.

Vale la pena señalar que algunos ISP son abusivos e ignoran los valores TTL especificados por los servidores DNS autorizados (sustituyendo su propia anulación administrativa, que es una violación de RFC). No hay nada que hacer al respecto, desde una perspectiva técnica. Si se puede ubicar a los operadores de servidores DNS abusivos, las quejas a sus administradores de sistemas pueden dar lugar a la implementación de las mejores prácticas (posiblemente lo que equivale a sentido común para cualquier ingeniero de redes familiarizado con DNS). Este tipo particular de abuso no es un problema técnico.

Si todos "cumplen las reglas", los cambios en los registros DNS pueden "surtir efecto" muy rápidamente. En el caso de cambiar la dirección IP asignada a un registro "A", por ejemplo, se realizaría un retroceso exponencial del valor TTL, hasta el momento en que se realizará el cambio. El TTL puede comenzar en 1 día, por ejemplo, y reducirse a 12 horas por un período de 24 horas, luego a 6 horas por un período de 12 horas, 3 horas por un período de 6 horas, etc., hasta un intervalo adecuadamente pequeño. Una vez que el TTL ha sido retirado, el registro puede cambiarse y el TTL puede volver al valor deseado para las operaciones diarias. (No es necesario usar un retroceso exponencial, sin embargo, esta estrategia minimiza el tiempo que el registro tendrá un TTL bajo y disminuye la carga en el servidor DNS autorizado).

Después de realizar un cambio de registro DNS, los registros deben ser monitoreados para detectar intentos de acceso como resultado del antiguo registro DNS. En el ejemplo de cambiar un registro "A" para referirse a una nueva dirección IP, un servidor debe permanecer presente en la antigua dirección IP para manejar los intentos de acceso resultantes de las computadoras cliente que todavía usan el antiguo registro "A". Una vez que los intentos de acceso basados ​​en el registro anterior han alcanzado un nivel aceptablemente bajo, la antigua dirección IP puede ser desactivada. Si las solicitudes relacionadas con un registro antiguo no disminuyen rápidamente, es posible que (como se describió anteriormente) un servidor DNS recursivo esté ignorando el TTL autorizado. Sin embargo, conocer la dirección IP de origen de un intento de acceso no proporciona información directa sobre el servidor DNS recursivo responsable de suministrar un registro antiguo.

Personalmente, he visto cambios que "entran en vigencia" inmediatamente, en unas pocas horas, y en algunos casos con un ISP con daño cerebral en particular, después de varios días. Hacer un retroceso de tu TTL y ser consciente de cómo funciona el proceso aumentará tus cambios para el éxito, pero nunca puedes estar seguro de lo que algún idiota bien intencionado podría estar haciendo con sus servidores DNS recursivos.

Evan Anderson
fuente
9
Esta no es una respuesta sobre "OpenDNS", es una respuesta sobre DNS. Cualquier proveedor de DNS recursivo podría implementar las interfaces que quisieran para permitir las purgas de caché, etc. Estamos hablando de DNS, no de API de proveedores. En cuanto a sus ediciones: estoy de acuerdo con la frase "daño cerebral" como una frase utilizada durante mucho tiempo en la cultura hacker, y la estoy usando en ese contexto (ver el Archivo Jargon, "Hackers" de Steven Levy, etc.) . En cuanto a "idiota", creo que está razonablemente establecido que, fuera de los códigos legales, este es un término coloquial para acciones que son de naturaleza incompetente. Yo también lo mantengo.
Evan Anderson
11
@tonygil: OpenDNS no es DNS. Es solo un servicio que alguien ofrece. ¿Qué pasa si FooDNS abre mañana y tiene una nueva y emocionante API de limpieza de caché? ¿Debería mi respuesta incluir eso también? ¿Dónde se detiene? Esto está degenerando en locura. re: derechos civiles: no soy un empleador o entidad gubernamental que niega derechos civiles a un miembro de una clase protegida. Claro, ve a ver si puedes encontrar a alguien que quiera enjuiciarme. Pueden contactarme por correo en PO Box 852, Troy, OH. (866) 569-9799, x801 reenvía a mi teléfono celular 24x7. (Ese es un buen trabajo de detective allí mirando mi perfil, por cierto.)
Evan Anderson
1
ya ves, dijiste que la presión de grupo trae cambios. Eso fue lo que hice. trajo a su atención que no estoy de acuerdo con su uso de "idiota" y "daño cerebral" porque son ofensivos y despectivos. el hecho de que alguien lo use profusamente (es decir, hackers) no lo hace correcto. el kkk usaba profusamente la n-palabra. los pls respetan a aquellos de nosotros que cuidamos a las personas con discapacidad mental. Entiendo que incorporas los términos metafóricamente en tu estilo colorido, pero créeme: son ofensivos e innecesarios.
Tony Gil
Acerca de honrar TTL: el TTL es el valor máximo para mantener las cosas en caché, un resolutor de almacenamiento en caché es libre de deshacerse de los datos que tiene delante. Para que puedan bajarlo si quieren. Sin embargo, es cierto que no deberían aumentarlo, eso es una violación del protocolo. Pero para las personas que ingresan como 1 segundo en el TTL, algunos cachés se defienden simplemente no respetando eso y en lugar de eso se aseguran en 5 minutos.
Patrick Mevzek
Los servidores DNS recursivos, generalmente administrados por ISP o departamentos de TI, hoy en día son grandes flotas (en cualquier nube) de servidores de nombres recursivos abiertos como 1.1.1.1o 8.8.8.8o 9.9.9.9o 80.80.80.80. Es importante comprender que están emitidos: la respuesta puede cambiar en función de la IP de origen porque afectará potencialmente una instancia física completamente diferente Y el caché que tienen puede ser global para todas las instancias, o no.
Patrick Mevzek