Questão O que um servidor público de nomes realmente faz?


Estou tentando entender a finalidade dos servidores de nomes DNS públicos (públicos, como não em SOA; como 8.8.8.8).

Eu executei um dig +trace comando, e, tanto quanto eu posso dizer, a única vez que o servidor de nomes é usado é quando encontrar o SOA do domínio raiz .. Depois disso, a SOA de cada domínio na hierarquia é consultada.

Minhas suposições são de que servidores de nomes públicos são usados ​​para:

  • identificando os SOAs do domínio raiz, para que eles não precisem ser codificados nos clientes.
  • descentralizando o processo e o cache. Portanto, se a SOA de um domínio ficar inativa, outro servidor poderá orientar os clientes.
  • reduzindo a carga no SOA. Se outro servidor sabe o recored, não há necessidade de consultar o SOA.

Eu tenho 3 pergunta:

  • As minhas suposições estão corretas?

  • Se estas são realmente as únicas coisas que um servidor de nomes faz, se eu não precisar de cache e estou disposto a fazer a consulta recursiva por conta própria, posso parar de usar servidores de nomes?

  • Pode / O SOA se recusa a responder a consultas de um servidor de nomes específico se ele executar muitas solicitações?

4


origem


Sua pergunta é difícil de entender por causa do uso errado de alguns termos técnicos. Por exemplo, eu não acho que você usa "SOA" corretamente, especialmente na última sentença. - bortzmeyer


Respostas:


Sua suposição está incorreta. o +trace opção diz dig para consultar os servidores SOA para cada domínio; esse não é o comportamento normal. Uma pesquisa de DNS normal usará seu servidor DNS configurado, como um servidor DNS recursivo público, para todas as suas pesquisas.

Você não pode parar de usar servidores de nome, a menos que esteja preparado para usar somente endereços IP. Mas você pode executar seu próprio servidor de nomes recursivo, possivelmente na mesma máquina que seu software cliente, caso em que você pode parar de usar servidores de nomes recursivos públicos.


7



Como o servidor público sabe a resposta se não é o SOA? - David Bryant
@DavidBryant O servidor público obtém da SOA, se não tiver o resultado armazenado em cache. Isso é o que os servidores DNS recursivos fazem. Mas seu cliente não está recebendo nada da SOA. - Mike Scott
Obrigado por esclarecer. Uma última pergunta: notei que quando envio um grande número de solicitações por segundo para servidores de nomes públicos, começo a receber REFUSED/SERVFAIL respostas ou apenas respostas erradas, como NXDOMAIN para domínios existentes. Isso é o resultado do servidor público me proibindo, ou a SOA está banindo o servidor público? (considerando que o servidor público não armazena em cache as respostas e pergunta ao SOA todas as vezes) - David Bryant
Isso provavelmente será o servidor público que limita seu acesso. - Mike Scott
Não importa quantas vezes você consulte um servidor DNS, ele nunca deve enviar NXDOMAIN para domínios existentes. Se um servidor DNS faz isso, então esse servidor DNS está com defeito. - kasperd


Como uma pequena adição a Mike Scott's answer...

Os principais propósitos dos servidores de nomes públicos (como você os definiu) são:

  1. Evite que os indivíduos tenham que executar seus próprios servidores de nomes.

  2. Ajude (potencialmente) a acelerar o processo de resolução de domínios.

Algumas notas sobre suas "três suposições"

  • Alguns servidores de nomes apenas encaminham pesquisas para solicitações desconhecidas para outros resolvedores recursivos (como servidores de nome público). Como os servidores de nomes públicos mantêm arquivos de dicas de raiz fazer pesquisas recursivas, isso significa que esse arquivo é desnecessário nesses Somente encaminhamento servidores de nomes. No entanto, isso não tem nada a ver com qualquer "cliente" (tanto quanto eu entendo o seu significado).

  • Servidores de nome público podem (possivelmente) ajudar na descentralização e no armazenamento em cache. Da mesma forma, eles podem fornecer robustez ao sistema DNS em geral. Mas esses são benefícios colaterais.

  • Os servidores DNS públicos podem reduzir a carga em um servidor de nomes autoritativo, mas, novamente, essa não é a principal razão para ignorar esses servidores. A ideia é que as informações armazenadas em cache sejam retornadas mais rapidamente, em vez de solicitar essas informações de um servidor de nomes autoritativo.


5





Um resolvedor público (cuidado com o terme "nameserver": existem dois tipos de servidores de nomes, resolvedores e autoritativos, e eles não têm quase nada em comum) é apenas um resolvedor, como o do seu ISP ou o que você executa na sua rede. Como qualquer serviço, eles podem ser mais rápidos ou mais lentos que o serviço padrão, mais ou menos confiáveis, ter alguns recursos bons ou ruins adicionais, mas não fazem nada específico.


0