Os firewalls soltam as consultas do udp dns com mais de 512 bytes?

1

linha de fundo: O RFC do DNS observa que as consultas do DNS sobre o UDP estão limitadas a 512 bytes. Alguém sabe se isso é imposto por grandes firewalls corporativos?

longa história: Minha empresa desenvolve um produto que deve se comunicar entre os data centers. Como o usuário típico deste produto (engenheiro de desempenho) não teria acesso às configurações do firewall, gostaríamos de desenvolver um método que contorne os firewalls com boas taxas de sucesso. Pensamos em encapsular os dados do aplicativo por meio de consultas TXT do DNS, pois parece que (na WAN) os firewalls tendem a deixar que as consultas DNS passem. No entanto, não temos muito conhecimento sobre o comportamento comum do firewall e gostaríamos de alguma ajuda. Especificamente, estamos nos perguntando se os firewalls de marcas grandes bloqueiam consultas DNS sobre UDP com mais de 512 bytes.

Obrigado,

n

    
por nadiv 21.10.2009 / 11:54

6 respostas

0

Não, os firewalls geralmente não descartam grandes consultas DNS como essa, até onde eu sei. O que você quer ver para o seu problema é implementações existentes de IP sobre DNS, como dns2tcp, nstx ou iodo. Eles mostrarão exatamente como isso pode ser feito.

    
por 21.10.2009 / 12:03
3

Se você está falando de firewalls corporativos reais e corretos, provavelmente está OK, embora os Cisco PIXs apresentem uma configuração padrão que limita os pacotes a 512 bytes.

Se, por outro lado, você estiver falando sobre firewalls de baixo custo, roteadores SOHO, etc., é bem provável que você se solte.

Para obter um tratado completo sobre esses problemas com o kit de baixo custo, consulte RFC 5625 e o relatório do SSAC da ICANN SAC035 . Isenção de responsabilidade obrigatória - Eu escrevi estes documentos. O truncamento de pacotes DNS é uma das minhas especialidades ...

    
por 21.10.2009 / 16:01
1

A resposta curta é "não geralmente".

Com o EDNS, eles nem têm a limitação UDP de 512 bytes.

Veja a página wiki para alguns apontadores: link

O mais provável é que as pessoas pensem que o DNS é apenas UDP e ignoram que o TCP é necessário não opcional. Muitas vezes temos que executar servidores DNS públicos atrás de outros firewalls e fazê-los entender que precisamos do TCP não apenas aberto para nós, mas o mundo é uma dor.

    
por 21.10.2009 / 12:24
1

Existe uma extensão para o RFC conhecido como EDNS0 , que implementa a capacidade de estender Mensagens DNS além de 512 bytes em transportes UDP. Historicamente, alguns firewalls são conhecidos por bloquear o uso dessa extensão. Por exemplo, alguns firmwares PIX e ASA mais antigos serão excluídos por padrão como examinado aqui .

Provavelmente, os firewalls mais de hoje não exibem esse comportamento. Mas não há garantia de que você não vai entrar em um na natureza. Há também uma chance de que qualquer inspeção profunda de pacotes do seu tráfego possa resultar no bloqueio de uma anomalia.

Além disso, você deve ter em mente (se ainda não o fez) que, usando o UDP, precisará criar um controle de transmissão em sua camada de aplicativo, em vez de confiar no transporte (ou seja, TCP) para fornecê-lo. Certifique-se de seguir o conselho do womble sobre como observar as implementações de tunelamento de DNS existentes.

    
por 21.10.2009 / 12:25
1

Além do bom resumo de Alnitak, veja também uma excelente ferramenta para testar sua configuração de DNS e ver se deixa pacotes > 512 bytes vão (como deveria).

Aqui está um exemplo de DNS corrompido em um importante IAP na França:

% dig +short rs.dns-oarc.net txt
rst.x486.rs.dns-oarc.net.
rst.x454.x486.rs.dns-oarc.net.
rst.x384.x454.x486.rs.dns-oarc.net.
"213.228.63.58 lacks EDNS, defaults to 512"
"213.228.63.58 DNS reply size limit is at least 486 bytes"
    
por 22.10.2009 / 12:11
0

Alguns firewalls antigos fazem isso.

Este é um problema clássico dos firewalls da Cisco Pix. Google para cisco pix dns edns0 e você encontrará um monte de informações sobre isso.

Por exemplo, link

    
por 29.10.2009 / 18:52