Registro NS no arquivo de zona bind9

Registro NS no arquivo de zona bind9

Eu conheci um cenário estranho hoje.

Normalmente quando configuramos um registro de zona bind9, colocamos o registro NS igual ao nosso ORIGIN. No entanto, hoje encontrei uma configuração de bind9 funcional no site de produção que tem o registro NS apontando para outro domínio:

[data/cat_com.zone]

$ORIGIN cat.com.
$TTL 600
@       IN      SOA     ns.tree.com.    hostmaster.cat.com. (
                        2015030200
                        21600
                        3600
                        604800
                        86400 )

        IN      NS      ns.tree.com.
        IN      NS      ns2.tree.com.
        IN      MX      10      cat.com.

ns      IN      A       1.2.3.124
ns2     IN      A       1.2.3.124


host19  IN      A       1.2.3.66

E no registro de tree.com: [data/tree_com.zone]

$TTL 600

@   IN  SOA ns.tree.com. hostmaster.tree.com. (
      2015030200 ; serial
      28800 ; refresh
      7200 ; retry
      3600000 ; expire
      86400 ; default_ttl
      )
@   IN  NS      ns.tree.com.
@   IN  NS      ns2.tree.com.
@   IN  MX  10  mail.tree.com.



tree.com.              IN  A 1.2.3.66

ns.tree.com.           IN A 1.2.3.124
ns2.tree.com.          IN A 1.2.3.124

E no nomeado.conf, tem isto:

zone "tree.com" {
        type master;
        file "data/tree_com.zone";
};


zone "cat.com"  {
        type master;
        file "data/cat_com.zone";
};

Então, quando tento resolver um registro A em cat.com, digamos host19.cat.com, posso obter o registro 1.2.3.66. Isso é estranho porque de acordo com o arquivo de zona SOA, o registro NS está apontando para ns.tree.com, e no arquivo de zona SOA de tree.com, não há informações de host19.cat.com. Como o processo de resolução de DNS pode funcionar sem erros neste caso? O registro NS desempenha uma função aqui ou é apenas o nomeado.conf que decide qual arquivo de zona SOA deve ser usado (neste caso, cat.com estará se referindo ao arquivo cat_com.zone) e o registro NS em cat.com SOA não significou nada?

Responder1

É perfeitamente correto ter um nome de domínio/arquivo de zona apontando para servidores de nomes fora desse domínio, ou seja, é perfeitamente correto usá-lo ns1.example.comcomo servidor de nomes para o example.orgdomínio.

Não significa apenas que você não precisaCole registrosna example.orgzona, muitas vezes também é mais fácil de administrar.

Acho que você cometeu um pequeno erro conceitual ao pensar que registros NS externos, como ns1.example.comimplicam que os registros de recursos do example.orgdomínio também devem ser recuperados dos example.comdados da zona. Não é esse o caso, o registo NS apenas aponta para umahospedarexecutando o serviço de nomes para esse domínio, mas os registros de recursos virão dos dados de zona específicos para o example.orgdomínio.

informação relacionada