Um servidor DNS pode ser configurado para operar de duas maneiras diferentes. Ele funciona como um servidor DNS autoritativo para uma ou mais zonas ou é um resolvedor recursivo de armazenamento em cache. ( Esta resposta tem mais detalhes sobre a diferença.)
É possível configurar um servidor DNS para fazer os dois simultaneamente, mas antes de fazer isso, você precisa entender completamente a diferença entre os dois. Sem uma compreensão suficiente da diferença, é provável que você acabe com uma configuração que faça algo diferente do que você esperava.
O fluxo de uma resolução típica de DNS começa com uma consulta enviada de um cliente para um recursor. O recursor envia consultas para quantos servidores DNS autoritativos forem necessários para enviar uma resposta ao cliente.
Uma possível explicação de por que ela funciona quando os dois servidores estão ativos e não funciona quando um está inativo, é que você configurou um como um recursor e o outro como autoritativo. Quando ambos estão ativos, o cliente pode enviar uma consulta ao recursor, que então pergunta ao autoritativo, e a resposta do autoritativo ao recursor é então enviada ao cliente.
A comunicação entre o cliente e o recursor não se parece exatamente com a comunicação entre o recursor e o autoritativo. Cada consulta DNS tem um bit que indica qual tipo de consulta é. E as respostas do DNS também indicarão se o servidor de resposta é um recursor. Portanto, embora em alguns casos seja possível obter uma resposta para o tipo errado de consulta, tanto o cliente quanto o servidor terão a oportunidade de ver que algo está errado e se recusarão a apresentar uma resposta ao usuário.
Se você deseja configurar um par redundante de servidores DNS, a configuração de um como um recursor e o outro como autoritativo definitivamente não é o que você deseja. Um par redundante significa que você configura um deles para poder fazer o que quiser, e depois configurar o outro da mesma maneira.
Os servidores DNS especificados em sua configuração de rede devem ser recursores. Portanto, se você quiser que esses servidores DNS estejam em /etc/resolv.conf
ou algum outro arquivo de configuração de rede em /etc
, o que você deseja é um par redundante de recursores.
Além disso, todas as ferramentas host
, nslookup
e dig
, por padrão, enviam consultas adequadas para envio a um recursor. Se você quiser usar essas ferramentas diretamente em um servidor autoritativo, precisará informar a ferramenta, por exemplo, usando dig +norecurse
.