a medida que más y más personas adoptan características más nuevas como IPv6, prevención de spam y DNSSEC, es más probable que DNS cambie a TCP debido al mayor tamaño de respuesta.

¿Qué sucede si TCP está bloqueado?

sea cual sea el caso, cuando el tamaño del mensaje supere los 512 bytes, activará el bit ‘TC’ (truncamiento) en DNS a establecer, informando al cliente que la longitud del mensaje ha excedido el tamaño permitido. En estas situaciones, el cliente necesita volver a transmitir a través de TCP, que no tiene límite de tamaño., Si los servidores DNS y el entorno de red no pueden admitir paquetes UDP grandes, causará retransmisión a través de TCP; si TCP está bloqueado, la respuesta UDP grande resultará en fragmentación de IP o se eliminará por completo. El síntoma final para el cliente final suele ser una resolución DNS lenta o la incapacidad de resolver ciertos nombres de dominio.

El tamaño importa: EDNS

Puede que te estés preguntando de dónde viene el límite de tamaño de 512 bytes. El tamaño de la carga útil UDP de 512 bytes depende de IPv4., El estándar Ipv42 especifica que cada host debe ser capaz de volver a ensamblar paquetes de 576 bytes o menos, quitar cabecera y otras opciones, que deja 512 bytes para los datos de carga útil. Esta es la razón por la que hay precisamente 13 servidores raíz DNS 3 originalmente: 13 nombres de dominio y 13 direcciones IPv4 encajan muy bien en un solo paquete UDP.

esta limitación de tamaño fue reconocida hace mucho tiempo como un problema. En 1999, se propuso el mecanismo de extensión para DNS (EDNS), y se ha actualizado a lo largo de los años, aumentando el tamaño hasta 4096 bytes, o 4 kilobytes., Por lo tanto, si está ejecutando un servidor DNS razonablemente actualizado, las posibilidades de que cambie a TCP deben ser escasas(mer).

sin embargo, a pesar de que EDNS ha existido durante mucho tiempo, su soporte no ha sido tan universal como debería SER4 . Algunos equipos de red, como los firewalls, aún pueden hacer suposiciones sobre el tamaño del paquete DNS. Un firewall puede soltar o rechazar un paquete DNS grande, pensando que es un ataque., Este comportamiento puede no haber causado problemas visibles en el pasado (o lo hizo, pero nadie entendió por qué), pero como los datos DNS continúan aumentando de tamaño, es importante que todos los equipos de red estén configurados correctamente para admitir paquetes DNS de gran tamaño. Si el entorno de red no admite completamente mensajes DNS de gran tamaño, puede provocar que el engranaje de red rechace el mensaje DNS o que se caiga parcialmente durante la fragmentación. Lo que esto parece para el usuario final es que las consultas DNS están sin respuesta, o tomar un tiempo muy largo, dando la impresión de que «DNS/red es realmente lento.,»

mientras que EDNS es necesario para el funcionamiento del DNS moderno, la capacidad de enviar mensajes más grandes contribuyó a ataques volumétricos como la amplificación y la reflexión.