Resolver o NS de um domínio quando aponta para o mesmo domínio

0

Lendo esta pergunta me fez pensar:

I want to host a DNS server for my home website from my home (which has a static IP) what do I need to do?

Sinto-me confortável com o DNS e como funciona, mas esta questão leva-me a um caminho que não considerei antes.

Suponha que eu hospede um servidor DNS para o meu próprio domínio ( example.com ) em 1.2.3.4 , e este servidor DNS anuncia a seguinte zona (simplificada):

@   NS ns.domain.com.
@   A  1.2.3.4
ns  A  1.2.3.4

Depois, registro o servidor de nomes ns.example.com as example.com no meu registrador.

Não podemos resolver o endereço de ns.example.com sem saber primeiro quem é responsável por example.com .

Quando soubermos que ns.example.com é o servidor de nomes para example.com , não ficaremos presos? Certamente não há como entrar em contato com ns.example.com porque o registro A identificando seu endereço IP é mantido pelo mesmo servidor ...?

Presumivelmente, há um passo que me falta na pesquisa ...

Depois de ler this , meu entendimento é confirmado mas ainda fico perplexo ...

Parece que isso é possível, pois google.com parece estar configurado dessa maneira (conforme descrito no artigo vinculado).

Não há um passo faltando entre 5 e 6?

Step 5: [...] The .com gTLD server responds with a list of all of google.com’s NS records. In this case Google has four name servers, “ns1.google.com” to “ns4.google.com.”

Step 6: Finally, the DNS resolver queries one of Google’s name server for the IP of “www.google.com.”

... sim, mas precisamos saber o IP de um desses servidores de nomes para consultá-los, trocando efetivamente uma consulta www.google.com por uma consulta interina ns1.google.com .

O que estou perdendo aqui?

    
por Attie 02.06.2017 / 13:22

2 respostas

1

Nesta situação, a zona pai tem uma cópia dos registros A / AAAA relevantes. Quando você consulta a zona .com para registros NS, o servidor inclui esses registros de "cola" na seção adicional da resposta.

A zona de raiz (publicamente transferível ) tem muitas delegações com registros de cola:

lt.             172800  IN  NS      a.tld.lt.
lt.             172800  IN  NS      b.tld.lt.
a.tld.lt.       172800  IN  A       195.8.218.131
b.tld.lt.       172800  IN  A       194.0.20.1
b.tld.lt.       172800  IN  AAAA    2001:678:19:0:0:0:0:1

Se você tentar procurar os registros NS usando dig lt. ns @a.root-servers.net , verá os mesmos endereços em "SEÇÃO ADICIONAL".

    
por 02.06.2017 / 15:12
0

O passo 5 do artigo diz:

[...] The .com gTLD server does not have the IP addresses for google.com, but it knows the location of google.com’s name servers. The .com gTLD server responds with a list of all of google.com’s NS records.

Se eu não estiver errado, embora o servidor .com gTLD não tenha registros para os endereços IP de google.com , sabendo a localização do servidor de nomes do google.com , ele pode consultar os endereços IP e responder com eles.

Talvez fazer algumas experiências com dig usando +trace e +norecurse em várias etapas possa esclarecer o que está acontecendo.

    
por 02.06.2017 / 13:53

Tags