CNAME: os aliases do mundo DNS
Um registro CNAME (Canonical Name) é um tipo de registro DNS que cria um alias de um hostname para outro. Em vez de apontar diretamente para um endereço IP (como faz um registro A), um CNAME diz "este nome é na verdade um alias deste outro nome — vá buscar o IP lá". É como um redirecionamento de correspondência: se você envia uma carta para "Rua Roma 5" e há uma placa dizendo "o morador mudou-se para Rua Milão 10", a correspondência é entregue no novo endereço.
Os CNAMEs são fundamentais na infraestrutura web moderna: quase todos os serviços em nuvem, CDNs e plataformas SaaS exigem a configuração de um CNAME que aponte para o hostname deles. Quando você usa Cloudflare, AWS, Heroku, GitHub Pages ou qualquer outro serviço em nuvem, seu domínio tipicamente tem um CNAME apontando para o hostname do provedor. Isso permite que o provedor altere os IPs de seus servidores sem exigir mudanças no seu DNS.
As regras dos CNAMEs que você precisa conhecer
Os registros CNAME possuem regras rígidas definidas nas RFCs que, se violadas, causam erros de resolução. A regra mais importante: um hostname com um registro CNAME não pode ter nenhum outro tipo de registro. Isso significa que, se www.exemplo.com tem um CNAME, você não pode adicionar um registro TXT, MX ou qualquer outro registro no mesmo hostname. Essa limitação existe porque o CNAME indica que aquele nome é um alias — todas as consultas DNS para esse nome são redirecionadas para o alvo do CNAME.
A segunda regra crítica: você não pode usar um CNAME na raiz (apex) do domínio. O domínio exemplo.com (sem www) deve ter pelo menos os registros SOA e NS, que não podem coexistir com um CNAME. Se o seu serviço em nuvem exige um CNAME mas você precisa usar a raiz do domínio, procure no seu provedor DNS as alternativas: ALIAS, ANAME ou CNAME flattening que resolvem o conflito no lado do servidor.
Cadeias CNAME e desempenho
Quando um CNAME aponta para outro hostname que por sua vez também é um CNAME, cria-se uma cadeia. Nosso CNAME Lookup segue toda a cadeia até a resolução final, mostrando cada nível. As cadeias CNAME adicionam latência: cada nível requer uma consulta DNS adicional. A melhor prática é limitar as cadeias a 1-2 níveis. Cadeias mais longas são geralmente resultado de configurações legadas acumuladas ao longo do tempo e devem ser simplificadas.
Um problema insidioso das cadeias CNAME é o loop: A aponta para B que aponta de volta para A. Isso causa um erro de resolução infinito que os resolvers interrompem após um número máximo de passos (tipicamente 8-10). O CNAME Lookup identifica loops mostrando claramente o ciclo. Se você encontrar um loop, a solução é quebrar a cadeia substituindo um dos CNAMEs por um registro A direto.
Para verificar se seus CNAMEs estão configurados corretamente e se os alvos resolvem, combine o CNAME Lookup com o DNS Lookup para uma visão completa. Se você está migrando um serviço e precisa atualizar o alvo de um CNAME, reduza primeiro o TTL, faça a alteração e verifique a propagação global com DNS Propagation. Isso minimiza o tempo de inatividade durante as migrações.
Os CNAMEs também são usados para domínios personalizados de e-mail marketing e para rastreamento: links como click.newsletter.exemplo.com frequentemente são um CNAME para o domínio do serviço de e-mail marketing. Verifique periodicamente se esses CNAMEs ainda são necessários e se apontam para serviços ativos. CNAMEs órfãos que apontam para subdomínios de serviços que não são mais utilizados podem ser vulneráveis a subdomain takeover, um risco de segurança significativo.