como mais e mais pessoas adotam recursos mais recentes, tais como IPv6, evitar spam, e DNSSEC, DNS é mais provável de mudar para TCP devido ao tamanho de resposta maior.

o que acontece se o TCP for bloqueado?

qualquer que seja o caso, quando o tamanho da mensagem exceder 512 bytes, irá desencadear o bit ” TC ” (Truncação) em DNS a ser definido, informando o cliente de que o comprimento da mensagem excedeu o tamanho permitido. Nestas situações, o cliente precisa re-transmitir através do TCP, que não tem limite de tamanho., Se os servidores DNS e o ambiente de rede não suportarem pacotes UDP grandes, isso causará retransmissão sobre TCP; se TCP for bloqueado, a grande resposta UDP resultará em fragmentação IP ou será completamente descartada. O sintoma final para o cliente final é geralmente resolução DNS lenta, ou incapacidade de resolver certos nomes de domínio em tudo.

Size Matters: EDNS

you might be wondering where the size limit of 512 bytes come from. O tamanho de carga UDP de 512 bytes é uma dependência do IPv4., O IPv4 standard2 especifica que cada máquina deve ser capaz de reunir pacotes de 576 bytes ou menos, retirar o cabeçalho e outras opções, o que deixa 512 bytes para os dados de carga útil. Esta é a razão pela qual existem precisamente 13 servidores raiz DNS 3 originalmente: 13 nomes de domínio e 13 endereços IPv4 encaixam bem em um único pacote UDP.esta limitação de tamanho foi reconhecida há muito tempo como um problema. Em 1999, o mecanismo de extensão para DNS (EDNS) foi proposto, e foi atualizado ao longo dos anos, aumentando o tamanho todo o caminho para 4096 bytes, ou 4 kilobytes., Então, se você estiver executando um servidor DNS razoavelmente atualizado, as chances de ele mudar para TCP deve ser slim(mer).

no entanto, apesar de EDNS ter sido por volta de um longo tempo, seu suporte não tem sido tão universal quanto deveria ser4 . Alguns equipamentos de rede, como firewalls, ainda podem fazer suposições sobre o tamanho do pacote DNS. Uma firewall pode cair ou rejeitar um pacote DNS grande, pensando que é um ataque., Este comportamento pode não ter causado problemas visíveis no passado (ou causou, mas ninguém entendeu por quê), mas como os dados do DNS continuam a aumentar em tamanho, é importante que todos os equipamentos de rede sejam configurados corretamente para suportar grandes tamanhos de pacotes DNS. Se o ambiente de rede não suportar totalmente as grandes mensagens DNS, pode levar a que a mensagem DNS seja rejeitada pelo Gear de rede, ou parcialmente abandonada durante a fragmentação. O que isso parece para o usuário final é que as consultas DNS estão ficando sem resposta, ou demorar muito tempo, dando a impressão de que “DNS/network é realmente lento.,”

enquanto EDNS é necessário para o funcionamento do DNS moderno, a capacidade de enviar mensagens maiores contribuiu para ataques volumétricos, tais como amplificação e reflexão.