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.com
como servidor de nomes para o example.org
domínio.
Não significa apenas que você não precisaCole registrosna example.org
zona, 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.com
implicam que os registros de recursos do example.org
domínio também devem ser recuperados dos example.com
dados 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.org
domínio.