Para adicionar a resposta de Mit. A melhor prática é somente usar o Glue Records para resolver essas dependências circulares. Consulte a seção 2.3 do RFC 1912: link
Para citar:
Some people get in the bad habit of putting in a glue record whenever
they add an NS record "just to make sure". Having duplicate glue
records in your zone files just makes it harder when a nameserver moves to a new IP address, or is removed. You'll spend hours trying to figure out why random people still see the old IP address for some host, because someone forgot to change or remove a glue record in some other file. Newer BIND versions will ignore these extra glue records in local zone files.
Observe esse último bit se você estiver usando o BIND. Além disso, acho que a maioria dos clientes DNS ignorará os registros de cola extra-domínio, o que explicaria o que você está vendo.
Editar para acompanhar o comentário.
Com os registros de cola de TLD, você normalmente os forneceria ao seu registrador, mas, do contrário, as mesmas regras se aplicam. Eu executo domínios em .co.uk
e .com
. Eu também tenho servidores de nomes em ambos os TLDs que são autoritativos para todos os meus domínios.
Se eu executar dig ns co.uk
e dig ns com
, posso ver a grande quantidade de servidores com autoridade para esses TLDs. Se eu escolher um desses .com
servidores e dig @<server> ns <mydomain>.com
, ele retornará todos os quatro servidores de nomes para o meu domínio, mas apenas os registros de cola dos servidores de nomes no mesmo TLD (fornecido como ADICIONAIS), que é o que você está descrevendo.
Se eu executar dig @<co.uk server> <myotherdomain>.co.uk
, novamente terei os quatro servidores de nome, mas desta vez acompanhados pelos registros de colagem dos três deles no .co.uk
TLD.
Isto é tudo como deveria ser. Se todos os seus servidores de nomes estiverem em .us
TLD, os clientes que estiverem procurando seus .com
domínios serão informados dos nomes de domínio de seus servidores de nomes pelos .com
servers; então os clientes realizarão outra consulta nos .us
servidores para encontrar seus IPs. Essa viagem extra de ida e volta pode parecer ineficiente, mas só precisa acontecer uma vez por período TTL por cliente. (normalmente 48 horas para registros de TLDs).
(Desculpas se você já conhece todas as opções acima). Para responder a pergunta original. Os registros de cola não se destinam a salvar pesquisas de DNS. Eles são necessários para evitar loops infinitos.
Editar 2
Desculpem o assunto. Eu vejo o que você quer dizer agora (bons diagramas, a propósito).
Meu entendimento de como os clientes devem se comportar é que, se alguém tem a oportunidade de obter RRs com autoridade, então deveria; mas neste caso, o cliente está pedindo ao servidor de nomes por seus registros próprios A, o que é inútil, já que o Glue é aqueles registros A.
Estou alcançando os limites do meu conhecimento aqui, mas não consigo imaginar nenhuma situação em que um cliente precise fazer isso. Eu estou supondo aqui, mas talvez a implementação do cliente precise verificar se o servidor é definitivamente autoritativo para o ns_.host.us, mesmo quando isso significa o que parece ser uma ida e volta sem sentido.
Tente um dig +trace www.example.com
para ver se ele faz a mesma coisa. Eu ficaria curioso para ver se ele faz a mesma pesquisa se a consulta original fosse para um nome _.host.us também.