Os dados em um registro CNAME
sempre devem ser outro nome DNS - esse é o ponto inteiro de um CNAME
.
Como dito de forma sucinta pelo RFC 1034, os dados em CNAME
devem ser:
CNAME a domain name.
Enquanto estiver procurando um endereço IP, seu ticket é:
A For the IN class, a 32 bit IP address
CNAME
é projetado e implementado para ser um alias de DNS; não tem noção de ter um endereço IP naquele campo de dados. Como tal, é interpretado como um alias para outro nome DNS, conforme projetado; afinal, um endereço IP se encaixa na sintaxe de um nome DNS.
Assim, por exemplo, digamos que seus dados de DNS sejam:
somesubdomain.somedomain.com. 60 IN CNAME 192.0.2.1.
O servidor DNS recursivo que você está consultando vê que o registro é um CNAME
e números que você desejará que os dados reais contenham. Nenhum registro diferente do CNAME
foi encontrado, então não há resposta para dar ao cliente.
Ele tenta consultar um registro de um nome de host 192
, dentro do domínio 0.2.1
. Ele não tem nada armazenado em cache para esse nome, então ele pergunta aos servidores raiz. Eles atendem a solicitações de TLDs como .com
e .net
, mas essa solicitação é uma solicitação para .1
. Eles prontamente respondem que não existe tal coisa, e é isso que o recursor envia para você.
A resposta que você está vendo em dig
é seu servidor de nomes recursivo dizendo, "bem, o nome que você procurou apontou para outro lugar, e que algum lugar não existia - pergunte ao servidor raiz se você não acredite em mim ".
Então, sim, colocar um endereço IP em um registro CNAME
nunca é válido, e eu suspeito que os sistemas que estão funcionando estão funcionando corretamente através de algum outro mecanismo, como um arquivo hosts ou resolução de nome local - investigue seu nome comportamento de resolução.