O que é um registro de cola?

Respostas:

130

Um registro de cola é um termo para um registro que é servido por um servidor DNS que não é autoritário para a zona, para evitar uma condição de dependências impossíveis para uma zona DNS.

Digamos que eu possua uma zona DNS para example.com. Quero ter servidores DNS that're hospeda a zona autorizada para este domínio para que eu possa realmente usá-lo - registros adicionando para a raiz do domínio, www, mail, etc. Então, eu coloquei os servidores de nome no registro delegar eles - esses sempre são nomes, então vamos colocar ns1.example.come ns2.example.com.

Esse é o truque. Os servidores do TLD delegarão para os servidores DNS no registro whois - mas eles estão dentro example.com. Eles tentam encontrar ns1.example.com, pergunte aos .comservidores, e se remetido ao ... ns1.example.com.

O que os registros de cola fazem é permitir que os servidores do TLD enviem informações extras em resposta à consulta da example.comzona - para enviar o endereço IP que também está configurado para os servidores de nomes. Não é autoritativo, mas é um ponteiro para os servidores autoritativos, permitindo que o loop seja resolvido.

Shane Madden
fonte
57

Solicitei que essa resposta fosse mesclada a partir de uma pergunta duplicada, pois as respostas existentes não explicavam o papel da ADDITIONALseção.

Para ver como funciona, digite isto: dig +trace +additional google.com SOA

Isso rastreará a autoridade do servidor de nomes a partir dos servidores raiz ( +trace). A adição +additionaltambém mostrará a ADDITIONALseção de cada resposta do servidor DNS. Normalmente, a maioria das pessoas pensa no DNS em termos de QUESTIONe das ANSWERseções, mas ADDITIONALtambém desempenha um papel importante: se o servidor de nomes souber as respostas para qualquer dúvida relacionada à resposta, poderá fornecer preventivamente essas respostas na ADDITIONALseção sem exigir consultas adicionais do seu cliente.

Observe que os servidores de nomes oficiais google.comestão enraizados no domínio para o qual eles são oficiais. ( ns1.google.com, ns2.google.com, Etc.)

Quando você solicita a um servidor de nomes que forneça a lista de servidores de nomes para um domínio, ele geralmente fornecerá uma lista de Aregistros de tipo (endereços IP) na ADDITIONALseção, não apenas as NSrespostas de tipo: são chamadas de registros de cola , usadas para impedir a circulação circular. dependências. Nesse caso, esses Aregistros são veiculados nos servidores de nomes do TLD (.com, .org etc.) com base nos endereços IP que alguém forneceu ao registrador DNS responsável pelo domínio. Geralmente, eles podem ser alterados efetuando login na interface da web administrativa fornecida por você.

(isenção de responsabilidade: AAAAregistros contendo endereços IPV6 também podem ser fornecidos como parte da cola, mas deixei isso de fora por uma questão de simplicidade.)

Andrew B
fonte
Obrigado pela explicação detalhada. Eu aprendi muito.
Egemenk
Muito boa explicação. Gostaria de ter encontrado esse detalhe da resolução circular de dependência antes da minha última entrevista de emprego. Tenho certeza de que minha falta de noção sobre o assunto me custou muito.
converter42
@ converter42 Para ser justo, não acho que a maioria dos administradores de sistemas realmente espere que você faça essa pergunta corretamente. Sou líder de DNS e certamente não. Ele não me diga quando um entrevistado sabe DNS melhor do que 80% dos outros administradores embora. :)
Andrew B
11
@Patrick A seção adicional não está ativada por padrão ao executar +trace. É por isso que está lá.
Andrew B
11
@AndrewB observou, mas parece que pelo menos depende da versão dig ou de outra coisa, nos meus dig +tracetestes, adicionar +additionalnão altera a saída)
Patrick Mevzek
36

Há uma explicação precisa (e concisa) na wikipedia .
Citar:

Dependências circulares e registros de cola

Os servidores de nomes nas delegações são identificados pelo nome, e não pelo endereço IP. Isso significa que um servidor de nomes resolvido deve emitir outra solicitação DNS para descobrir o endereço IP do servidor ao qual foi encaminhado.
Se o nome fornecido na delegação for um subdomínio do domínio para o qual a delegação está sendo fornecida, haverá uma dependência circular. Nesse caso, o servidor de nomes que fornece a delegação também deve fornecer um ou mais endereços IP para o servidor de nomes autoritário mencionado na delegação. Esta informação é chamada cola.

. . .

Por exemplo, se o servidor de nomes com autoridade para example.org for ns1.example.org, um computador que tenta resolver www.example.org resolve primeiro o ns1.example.org. Como o ns1 está contido no example.org, isso requer a resolução do example.org primeiro, o que apresenta uma dependência circular.
Para quebrar a dependência, o servidor de nomes para o domínio de nível superior da organização inclui cola junto com a delegação para example.org. Os registros de cola são registros de endereço que fornecem endereços IP para o ns1.example.org. O resolvedor usa um ou mais desses endereços IP para consultar um dos servidores autorizados do domínio, o que permite concluir a consulta DNS.

voretaq7
fonte
30

Depois de pesquisar para sempre e ler muito sobre registros de cola e ainda não entender o que eles eram ou como você pode fazê-los, finalmente encontrei uma resposta e é muito simples.

Pelo que entendi, não há informações extras mágicas enviadas de algum lugar, é assim que funciona.

Digamos que seu domínio seja example.com e você queira usar seus próprios servidores de nomes ns1.example.com e ns2.example.com, você precisa de pelo menos dois servidores DNS.

  • O ns1.example.com tem IP 192.0.2.10
  • O ns2.example.com tem IP 192.0.2.20

Para que isso funcione agora, você precisa do principal proprietário do domínio para colocar os seguintes registros no DNS.

example.com NS ns1.example.com
example.com NS ns2.example.com

ns1.example.com A 192.0.2.10 
ns2.example.com A 192.0.2.20

Esses dois registros A são os registros de cola e precisam estar no domínio principal, neste caso .com, e nem todos os registradores podem fazer isso por você.

Se isso estiver errado, corrija-me. Eu apenas pensei em tentar explicar de uma maneira simples para outras pessoas que não conseguem encontrar a resposta correta.

hasse
fonte
4
A única ressalva à sua resposta é que os registros de cola não se limitam a aparecer nos domínios de nível superior. Você também pode ter um sub.example.comque é delegado para ns1.sub.example.come ns2.sub.example.comna example.comzona. Os servidores de nomes para comeles se delegaram example.come não podem fornecer cola para nenhum de seus filhos.
Andrew B
3
O ponto principal parece ser que, sem um registro de cola, se o subdomínio solicitado e o servidor de nomes estiverem no mesmo domínio, você ficará preso em um loop infinito: sub.example.com-> example.com-> ns1.example.com-> example.com-> ns1.example.com... e assim por diante
Daniel Waltrip
Estou tendo um peido cerebral e cada vez que leio uma explicação sobre a cola, não recebo informações suficientes - devido a minha falta de conhecimento do significado dos termos ... nesta resposta, quando você @ problema quando você diz "Esses dois registros A são os registros de cola e precisam estar no domínio de topo" ... o que você quer dizer exatamente com "o domínio de topo"?
Claud
11
@Claudar um domínio de topo (acho que ele quer dizer domínio de nível superior ou TLD) são domínios como com, net, org e (e a lista continua) encontrados no topo da hierarquia de domínios. Todo nome de domínio é um subdomínio de outro exceto esses domínios de nível superior.
frezq
Não vejo como os registros de domínio se encaixam nessas respostas sobre registros de cola. Meu registro de domínio possui um DNS que pode apontar para seu próprio servidor de nomes ou meu servidor de nomes personalizado. Mas não posso alterar o TTL para migrar sites rapidamente. Isso tem a ver com os registros de cola de alguma forma?
David Spector