Todo o stack estava na AWS, mas o DNS do domínio ainda era respondido pelo GoDaddy. Toda vez que eu precisava adicionar um registro, estava logando no console errado, com o modelo mental errado, longe de tudo. Eu não queria transferir o registro, correr atrás de um código EPP, nem esperar dias por uma aprovação de “Transferência de Saída.” Eu só queria que o Route 53 atendesse ao telefone. Aqui está o caminho exato que segui: só DNS, sem downtime, domínio ainda registrado no GoDaddy.
TL;DR: Passe o DNS de um domínio no GoDaddy para uma hosted zone no Route 53 trocando os name servers, depois confirme que está resolvendo com um único comando.
Stack: AWS Route 53, GoDaddy, DNS, nslookup
Nível: Iniciante
Tempo de leitura: ~4 min
Na primeira vez que tentei isso, anos atrás, confundi “transferir o domínio” com “mover o DNS” e acabei pagando por uma transferência de registrador que não precisava. São dois trabalhos diferentes. Mover o DNS é o mais barato, rápido e reversível, e é quase sempre o que você quer quando o resto da infra está na AWS.
Criando a Hosted Zone
Uma hosted zone é simplesmente o container onde o Route 53 guarda os registros de um domínio. Você a cria primeiro porque é isso que faz a AWS te entregar os name servers. No console do Route 53, abra Hosted zones e clique em Create hosted zone.
Domain name: example.dev
Type: Public hosted zone
Assim que ela existir, o Route 53 já escreve dois registros para você: um NS e um SOA. Deixe esses intactos, eles descrevem a própria zona. Depois abra a zona e copie os quatro name servers que foram atribuídos. Eles aparecem assim:
ns-xxxx.awsdns-xx.co.uk
ns-xxxx.awsdns-xx.org
ns-xxxx.awsdns-xx.net
ns-xxxx.awsdns-xx.com
Repare nos quatro sufixos: .co.uk, .org, .net, .com. Isso é intencional. A AWS distribui seus name servers entre TLDs diferentes para que uma falha em qualquer um deles não derrube a resolução do seu site. Você não configura isso, já vem assim.
Apontando o GoDaddy
Essa é a única troca que importa. Hoje o GoDaddy diz “pergunte aos meus name servers sobre este domínio.” Você está mudando para “pergunte ao Route 53.” No GoDaddy, vá em My Products, encontre o domínio e abra Manage DNS.
Na seção Nameservers, clique em Change e escolha Enter my own nameservers (advanced). O GoDaddy oferece dois campos por padrão, então clique em Add nameserver duas vezes para ter quatro, e cole os valores do Route 53:
ns-xxxx.awsdns-xx.co.uk
ns-xxxx.awsdns-xx.org
ns-xxxx.awsdns-xx.net
ns-xxxx.awsdns-xx.com
Salve e aprove o e-mail de confirmação se aparecer. A ordem dos quatro não importa, só que todos estejam presentes.
Aguardando a Propagação
Nada acontece instantaneamente. A internet cacheou os name servers antigos e esse cache expira sozinho, entre alguns minutos e 48 horas. Verifique o estado com:
nslookup -type=NS example.dev
Enquanto a resposta ainda mostrar domaincontrol.com, você está vendo os servidores antigos do GoDaddy e a troca ainda não aconteceu. Quando mostrar os awsdns, o Route 53 passa a ser o dono do DNS. Não tem nada para monitorar, chega lá por conta própria.
Criando o Primeiro Registro
Agora que o Route 53 está respondendo, aponte o domínio para algum lugar. Na hosted zone, clique em Create record. Para o domínio raiz apontando para um IP fixo de servidor:
Record name: (deixe em branco para o domínio raiz)
Record type: A
Alias: off
Value: 198.51.100.20
TTL: 300
Routing policy: Simple routing
Crie os registros e pronto. Mantenha o Alias desativado para um IP simples, esse toggle existe para destinos AWS como CloudFront, S3 ou um Load Balancer. O TTL de 300 segundos significa que qualquer edição futura neste registro se propaga em cerca de cinco minutos, exatamente o que você quer enquanto as coisas ainda estão se ajustando.
O que você fez
Você criou uma hosted zone no Route 53, colou os quatro name servers no GoDaddy, aguardou a propagação e apontou seu domínio raiz para um servidor. O registro nunca saiu do GoDaddy, mas cada lookup de DNS agora cai na AWS. O domínio finalmente mora no mesmo lugar que tudo o que você roda.
Próximos passos
- Migre o e-mail: Se o domínio lida com e-mail, recrie os registros MX e TXT do seu provedor nessa mesma hosted zone antes de depender dela.
- Use Alias para destinos AWS: Apontar para CloudFront, S3 ou um ALB é um registro Alias, não um registro A, e funciona no domínio raiz sem custo adicional.
- Reduza o TTL antes de cortes planejados: Defina o TTL para 60 no dia anterior a uma mudança, assim um valor errado reverte em um minuto, não em uma hora.
- Transfira o registrador só se for necessário: Sair completamente do GoDaddy é um trabalho separado e mais demorado, você não precisa disso só para rodar o DNS na AWS.
Dúvidas ou feedback? Me encontre no LinkedIn ou GitHub.