我想為 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 Gateway 和 Amazon 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。 | CNAME | abc.example.net。 |
abc.example.net。 | A | 203.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 記錄的考量
-
您無法為父網域、裸網域或 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.
-
CNAME 記錄無法與託管區域檔案中相同網域的其他記錄類型共存。例如,如果記錄類型為 CNAME,則網域 example.com 只能有一種記錄類型。您無法建立下列記錄:
abc.example.com CNAME www.example.comabc.example.com A 54.239.28.85
-
您可以建立可與 CNAME 記錄共存的萬用字元記錄:
abc.example.com CNAME www.example.com*.example.com A 54.239.28.85
相關資訊
為什麼在建立 Route 53 別名資源記錄集時無法選取偏好的別名目標?