如何為 AWS 中託管的服務建立別名記錄?

2 分的閱讀內容
0

我想為 AWS 託管服務建立自訂 DNS 記錄,並且我想知道要使用哪種類型的別名記錄。

簡短說明

Amazon Route 53 別名記錄會在內部映射至別名目標 (例如 AWS 資源) 的 DNS 名稱。Route 53 會監控與別名目標 DNS 名稱相關聯的 IP 地址,以進行擴展動作和軟體更新。Route 53 名稱伺服器會使用別名目標 IP 地址的 A 記錄 (IPv4 地址) 或 AAAA 記錄 (IPv6 地址) 回應。

解決方法

建立別名記錄

使用 Route 53 主控台建立記錄,並指定必要的別名記錄值

請確保為您指向的服務中的 IP 地址使用正確的 DNS 記錄類型:

  • Amazon CloudFront 分發: A 記錄 (IPv4) 或 AAAA 記錄 (IPv6)
  • AWS Elastic Beanstalk 環境: A 記錄 (IPv4)
  • Elastic Load Balancing 負載平衡器: A 記錄 (IPv4) 或 AAAA 記錄 (IPv6)
  • Amazon Simple Storage Service (Amazon S3) 儲存貯體: A 記錄 (IPv4)
  • Amazon API Gateway 自訂區域 API 和邊緣最佳化 API: A 記錄 (IPv4)
  • Amazon VPC 介面端點: A 記錄 (IPv4)
  • AWS Global Accelerator: A 記錄 (IPv4)
  • AWS AppSync: A 記錄 (IPv4)
  • AWS App Runner: A 記錄 (IPv4)
  • 相同託管區域中的另一條 Route 53 記錄

**注意:**某些服務會要求您在建立記錄之前設定自訂 DNS 名稱。這些服務包括 Amazon API GatewayAmazon CloudFront

CNAME 支援

只有當記錄類型相符時,Route 53 才會追蹤別名記錄中的指標。若要建立 CNAME 記錄的別名記錄,別名目標必須解析為 CNAME 值。

即使您建立無效的 CNAME (ALIAS) 記錄,Route 53 也無法解析端點的 IP 地址。因此,Route 53 會傳回 SERVFAIL/REFUSED RCODE 錯誤。

有效的 CNAME(ALIAS) 記錄

名稱類型
cname.example.com。CNAME(ALIAS)cname1.example.com。
cname1.example.com。CNAMEabc.example.net。
abc.example.net。A203.0.113.1

無效的 CNAME(ALIAS) 記錄

名稱類型
cname.example.com。CNAME(ALIAS)d12345xx.cloudfront.net。
cname.example.com。CNAME(ALIAS)dualstack.elb123.us-east 1.elb.amazonaws.com。
cname.example.com。CNAME(ALIAS)s3-website-us-west-2.amazonaws.com。
cname.example.com。CNAME(ALIAS)ebs1234.us-east-1.elasticbeanstalk.com。

從非 Route 53 DNS 供應商指向

如果您為網域使用 Route 53 以外的 DNS 供應商,則您可能可以將該網域指向 AWS 服務。檢查您的 DNS 供應商是否支援根網域上的 CNAME 記錄。為此,請使用 CNAME 平面化、ANAME 記錄或 WebHops Redirect 等技術。

建立 CNAME 記錄的考量

  1. 您無法為父網域、裸網域或 Apex 網域建立 CNAME 記錄。對於 Route 53 時,您可以使用別名記錄將父網域指向其他支援的別名目標。例如,如果您為網域 example.com 建立託管區域,則無法建立下列 CNAME 記錄:

    example.com CNAME dualstack.elb123.us-east 1.elb.amazonaws.com.

    如果您已為網域 www.example.com 建立託管區域,則無法建立下列 CNAME 記錄:

    www.example.com CNAME dualstack.elb123.us-east 1.elb.amazonaws.com.

    對於 Route 53,您可以改為建立別名記錄:

    example.com Alias(A) dualstack.elb123.us-east 1.elb.amazonaws.com.
  2. CNAME 記錄無法與託管區域檔案中相同網域的其他記錄類型共存。例如,如果記錄類型為 CNAME,則網域 example.com 只能有一種記錄類型。您無法建立下列記錄:

    abc.example.com CNAME www.example.comabc.example.com A     54.239.28.85
  3. 您可以建立可與 CNAME 記錄共存的萬用字元記錄:

    abc.example.com CNAME www.example.com*.example.com   A     54.239.28.85

相關資訊

為什麼在建立 Route 53 別名資源記錄集時無法選取偏好的別名目標?

AWS 官方
AWS 官方已更新 7 個月前