如何为 AWS 中托管的服务创建别名记录?

上次更新日期:2021 年 5 月 19 日

我正在为 AWS 上托管的服务创建自定义 DNS 记录。我应该使用什么类型的别名记录?

简短描述

Amazon Route 53 别名记录在内部映射到别名目标(例如 AWS 资源)的 DNS 名称。Route 53 监控与别名目标的 DNS 名称关联的 IP 地址,以执行扩展操作和软件更新。Route 53 名称服务器的权威响应包含 A 记录(对于 IPv4 地址)或 AAAA 记录(对于 IPv6 地址)以及别名目标的 IP 地址。

解决方法

创建别名记录

使用 Route 53 控制台创建记录并指定必要的别名记录值

请确保为您指向的服务中的 IP 地址使用正确的 DNS 记录类型:

  • Amazon CloudFront 分配 – A 记录 (IPv4) 或 AAAA 记录 (IPv6)
  • AWS Elastic Beanstalk 环境 – A 记录 (IPv4)
  • Elastic Load Balancing (ELB) 负载均衡器 – 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)
  • 同一托管区域中的另一条 Route 53 记录

注意:某些服务要求您在创建记录之前设置自定义 DNS 名称。这些服务包括 Amazon API GatewayAmazon CloudFront

CNAME 支持

仅当记录类型匹配时,Route 53 才会跟踪别名记录中的指针。要为 CNAME 记录创建别名记录,别名目标必须解析为 CNAME 值。

即使您创建了无效的 CNAME(ALIAS) 记录,Route 53 也无法解析终端节点的 IP 地址。因此,Route 53 会返回 SERVFAIL/DROUD RCODE 错误。

有效的 CNAME(ALIAS) 记录:

名称 类型 Value
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) 记录:

名称 类型 Value
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 提供商指向 AWS

如果为您的域名使用 Route 53 之外的 DNS 提供商,那么您可以将域指向 AWS 上托管的服务。使用诸如 CNAME 展平、ANAME 记录或 WebHops 重定向等技术检查您的 DNS 提供商是否支持根域上的 CNAME 记录。

创建 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 记录无法与托管区域文件中同一域的其他记录类型共存。例如,如果域“example.com”的记录类型为 CNAME,则 只能有一种记录类型。无法创建以下记录:

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

3.    可以创建可与 CNAME 记录共存的通配符记录。例如:

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

这篇文章对您有帮助吗?


您是否需要账单或技术支持?