Domain-Name-System

如何將外部 DNS 與 AWS Elastic Load Balancer 結合使用?

  • February 20, 2018

我正在設置一個 Application Elastic Load Balancer,我讓它指向幾個 EC2 實例。鑑於我的 DNS 是在 AWS 外部託管的,我現在正試圖弄清楚如何設置 DNS。

我知道我可以為我的域使用 cname,因此我可以為 www.example.com、foo.example.com(和任何其他子域.example.com)設置 DNS 記錄並將它們指向我的 ELB類似 elb-123456789.eu-west-1.elb.amazonaws.com 的東西。所以這一切都很好。

但是,對於頂點記錄 (example.com),我不能使用 cname,而必須使用 A 記錄。據我所見(我可能錯了),我需要使用 Route 53:

  • 為 example.com 創建一個託管區域
  • 在 example.com 的託管區域內創建一個記錄集,類型為alias. 對於別名目標,我從上面選擇 ELB
  • 點擊保存
  • ???

我不知道現在如何將我在域名註冊商處的 A 記錄指向這個 Route 53 別名。

還是我打算做一些完全不同的事情?

DNS 標准說您不能在域 Apex 上擁有 CNAME,您需要 A 記錄。

一些提供商會讓您按照標準執行此操作。CloudFlare 以一種棘手的方式做到這一點,它似乎允許您在域頂點創建一個 CNAME,但它使用代理系統以符合標準的方式進行 - Michael 在下面對此進行了很好的解釋。

最好的選擇是使用 AWS Route53 和別名記錄。Route53 接管了為域提供 DNS 的工作,您不再需要以前的 DNS 提供商。

引用自:https://serverfault.com/questions/897921