O que é uma "consulta DNS recursiva"? [fechadas]

15

Alguém pode explicar resumidamente o que "consulta DNS recursiva" significa e como pode ser considerado ruim ?

LanceBaynes
fonte
Eu sabia quem escreveu isso apenas no título. Não sei por que você continua postando coisas sobre DNS aqui, mas isso não é específico para Unix / Linux. Pessoalmente, acho que é uma pergunta decente, mas não é um tópico aqui, e não acho que tenhamos outro site na rede que o queira
Michael Mrozek
Isso é realmente offtopic aqui? Considerando que provavelmente 90% dos servidores DNS do mundo são executados em unix / linux? Talvez a pergunta possa ter sido reformulada: "Como posso configurar meu servidor DNS para responder a consultas recursivas e por que devo evitar isso?" mas isso é realmente "offtopic"? Apenas curioso.
Gabe.
Ele poderia sem dúvida ser considerado um ajuste melhor em security.stackexchange.com, mas eu não vejo nenhuma razão real para rejeitá-la aqui outright ...
Shadur

Respostas:

25

TL; DR : as consultas recursivas fazem parte do funcionamento da Internet e do DNS, mas nem todos os servidores DNS devem receber consultas recursivas e, quando os que não responderem responderem, você poderá obter problemas.

Versão mais longa:

Recursão, n: Veja em Recursão.

Uma consulta DNS recursiva ocorre quando o servidor DNS para o qual você solicitou o endereço, digamos, unix.stackexchange.com, não sabe a resposta, então precisa verificar com outro servidor.

Normalmente, é assim que o DNS funciona - o servidor DNS do seu provedor de serviços de Internet não possui todos os registros de domínio da Internet permanentemente memorizados por razões óbvias; portanto, a seguinte troca acontece sob o capô:

  1. Você: Ei, navegador, mostre-me http://unix.stackexchange.com

  2. Navegador: Com certeza! ... Hum. Na verdade, não sei qual é o endereço IP.

    Ei, SO, você pode me dizer onde encontrar o unix.stackexchange.com?

  3. OS: Com certeza ...

    Hmm. Não está no meu próprio arquivo de hosts. Deixe-me apenas verificar a configuração do meu resolvedor ...

    Ei, servidor DNS do ISP, você pode me dizer onde encontrar unix.stackexchange.com?

  4. Servidor DNS do ISP: Com certeza!

    ... Hummm. Esse não está na minha lista de domínios oficiais e, no momento, não tenho essa resposta em cache.

    Ei, servidores raiz da internet, você pode me dizer quem é autoritário para stackexchange.com?

  5. Servidores raiz da Internet: Com certeza! De acordo com nossos registros, você deseja ns1.serverfault.com, ns2.serverfault.com ou ns3.serverfault.com.

  6. Servidor DNS do ISP: Obrigado, servidores raiz da Internet!

    Olá, ns2.serverfault.com, você pode me dizer onde encontrar o unix.stackexchange.com?

  7. ns2.serverfault.com : Com certeza! Esse é o endereço 64.34.119.12

  8. Servidor DNS do ISP : Ótimo, obrigado!

    SO, o número que você está procurando é 64.34.119.12.

  9. OS: Ótimo, obrigado!

    Navegador, você precisa do endereço 64.34.119.12

  10. Navegador: Ótimo, obrigado!

    Ok, chamando a página agora.

  11. Você: Sim, obrigado Navegador!

Agora, lembre-se de que existem realmente dois tipos de servidores de nomes consultados aqui - servidores DNS autoritativos (os chamados servidores "raiz" que informavam ao servidor DNS do seu ISP onde encontrar o servidor DNS do SE.com e o servidor DNS autoritário do SE.com ) e servidores DNS recorrentes ou de encaminhamento (servidor DNS do seu ISP).

Normalmente, o primeiro tipo não deve responder a consultas recursivas, especialmente não de fora de seu próprio domínio. Às vezes, os ISPs menores economizam custos ao fazer com que o servidor de nomes autoritário primário seja o mesmo servidor de servidor de nomes de encaminhamento primário, mas essa é uma política pouco segura - especialmente se você não configurar o servidor para recusar consultas recursivas fora do seu próprio intervalo de IP.

Leia mais aqui na Wikipedia .

Shadur
fonte
Tanto quanto eu sei, os servidores Raiz devem direcioná-lo para os .comservidores e, a partir daí, o servidor recursivo do ISP apontaria para o servidor do SE.com.
Hanan N.
Sim, mas achei que o manteria pelo menos / um pouco / simplificado, mas compreensível.
Shadur
Acho que você esqueceu a etapa 12: Michael Mrozek: "Ei, LanceBaynes, eu sabia quem escreveu isso apenas no título ..."
Alois Mahdal
Excelente! resposta foi upwoted1
Valentin Bajrami
5

Se houver dois servidores DNS, o DNS-A é a autoridade para o domínio-a e o DNS-B é a autoridade para o domínio-b, e alguém envia uma consulta DNS ao DNS-A para uma pesquisa no domínio-b. O DNS-A seria recorrente ao enviar uma solicitação ao DNS-B para pesquisar o domínio-b. Essencialmente, uma consulta recursiva ocorre quando um servidor DNS, em nome do cliente que enviou a consulta, persegue a trilha do DNS para atender à solicitação.

Isso é bom se você estiver hospedando um servidor DNS para uma rede, como um escritório, e todas as máquinas nesse escritório usarão o servidor DNS para fazer todas as pesquisas. Isso é ruim se você estiver permitindo que alguém faça consultas recursivas de DNS. Isso também é ruim se você estiver hospedando um servidor DNS que apenas deve atender a solicitações para um determinado domínio. Se alguém solicitar uma pesquisa para outro domínio, o servidor DNS retornará um erro em vez de fazer recursão.

Jon Lin
fonte