我正在設定一個應用程式彈性負載平衡器,並將其指向一些 EC2 執行個體。鑑於我的 DNS 是從 AWS 外部託管的,我現在正在嘗試了解如何設定 DNS。
我知道我可以使用我的網域的 cname,因此我可以為 www.example.com、foo.example.com(以及任何其他子網域.example.com)設定 DNS 記錄,並將它們指向我的 ELB類似於elb-123456789.eu-west-1.elb.amazonaws.com。所以這一切都很好。
但是,對於 apex 記錄 (example.com),我無法使用 cname,必須使用 A 記錄。據我所知(我可能是錯的),我需要使用 Route 53:
- 為 example.com 建立託管區域
- 在 example.com 的託管區域內建立一個記錄集,類型為
alias
.對於別名目標,我從上面選擇 ELB - 點擊“儲存”
- ???
我現在不知道如何將我的網域註冊商的 A 記錄指向此 Route 53 別名。
或者我應該做一些完全不同的事情?
答案1
DNS 標準規定您無法在 Apex 網域擁有 CNAME,您需要 A 記錄。
一些提供者會讓您按照標準執行此操作。 CloudFlare 以一種棘手的方式實現這一點,它似乎讓您在網域頂端創建 CNAME,但使用代理系統以符合標準的方式實現這一點 - Michael 在下面對此進行了詳細解釋。
最佳選擇是使用 AWS Route53 和別名記錄。 Route53 接管為網域提供 DNS 的工作,您不再需要以前的 DNS 提供者。