Dns 指向亚马逊&x27;s CloudFront位于A记录而非CNAME

Dns 指向亚马逊&x27;s CloudFront位于A记录而非CNAME,dns,amazon-web-services,amazon,amazon-cloudfront,Dns,Amazon Web Services,Amazon,Amazon Cloudfront,我已经找到了将我的域的CNAME指向Amazon的CloudFront服务的说明,但理想情况下,我希望指向根名称(记录名)。例如,foo.com而不是www.foo.com。这可能吗?指向www.example.com仍然可以使用A记录,但您必须将其指向IP地址,然后,它与“www”或前面的任何内容都没有关系 CNAMEs和A-Records之间的区别只是CNAME指向另一个名称,DNS必须依次查找该名称,而A-Records只需要一次查找,并直接指向IP地址 这就是说,您很快就会明白为什么将A

我已经找到了将我的域的CNAME指向Amazon的CloudFront服务的说明,但理想情况下,我希望指向根名称(记录名)。例如,foo.com而不是www.foo.com。这可能吗?

指向
www.example.com
仍然可以使用A记录,但您必须将其指向IP地址,然后,它与“www”或前面的任何内容都没有关系

CNAMEs和A-Records之间的区别只是CNAME指向另一个名称,DNS必须依次查找该名称,而A-Records只需要一次查找,并直接指向IP地址

这就是说,您很快就会明白为什么将A-records与这种云托管一起使用可能是个坏主意或不可能。Amazon使用多个IP地址,您无法预先知道这些IP地址是什么。DNS更改很慢。因此,除非您有一个不改变的特定IP地址,否则使用a记录根本不起作用。找到一个具有固定IP地址的托管服务,您可以使用a-records

就性能或可达性而言,CNAME和a-records之间只有细微的差别

编辑:

正如SLaks所指出的,似乎最好坚持“旧规则”为您的根域名使用A记录。但是你会发现有时候你没有选择,这取决于你的主机提供商允许你做什么。幸运的是,现在几乎没有任何东西可以阻止您这样做(使用CNAME)。

您可以使用他们的Route 53服务将zone apex(即example.com)指向AWS上的CloudFront发行版。只需登录到CloudFront发行版,并将备用域名(CNAMEs)设置到您的域(例如example.com和/或www.example.com)。然后在Route 53中,为您的域创建一个托管区域,然后创建一个别名记录,选择CloudFront发行版作为目标。您还可以为任何子域(如www.example.com)创建第二个别名记录。注意:您还需要使用域注册器更改名称服务器

从路线53常见问题解答:

问:我可以将我的区域顶点(example.com与www.example.com)指向我的 Amazon CloudFront分发

对。Amazon Route 53提供了一种特殊类型的记录,称为“别名” 记录允许您将区域apex(example.com)DNS名称映射到您的 Amazon CloudFront发行版(例如,d123.CloudFront.net)。知识产权 与Amazon CloudFront端点相关联的地址因环境而异 最终用户的位置(以便将最终用户引导到 最近的CloudFront edge位置),并可因以下原因随时更改 放大、缩小或软件更新。53号干线回应 每个请求一个别名记录,其中包含 分配。路由53对别名记录的查询不收费 映射到CloudFront发行版的。将列出这些查询 作为亚马逊Route 53使用情况报告中的“AWS内部DNS查询”

有关更多信息,请参阅AWSs文档:


错了。CNAMEs不应用于根域,因为一些旧的电子邮件服务器无法处理它们。事实上,有些注册商不允许你为域名根创建CNAME。真的吗?我读的是相反的。但不管怎样,你能更精确一点吗?虽然我使用A-records,但我知道有无数网站使用CNAME记录。Wikipedia,不是最小的,在所有本地版本中使用CNAME记录(即
nl.Wikipedia.org
是CNAME)。也许“old”是指20世纪90年代之前?我个人去年看到一个电子邮件服务器无法向我的域发送邮件,因为根域是CNAME。DNS RFC(RFC1033)要求“zone apex”(有时称为“根域”或“裸域”)是“a记录”。@Abel nl.wikipedia.org不是根域,而是子域,您可以为那些没有问题的用户使用CNAMES。但是根域(即wikipedia.org)上的CNAME是不允许的。需要注意的是,您必须将您的apex域添加到CloudFront配置中的“CNAMES”列表中(即使它不是CNAME),否则它不会在Route 53的下拉列表中显示为别名选择。我对此有点困惑。亚马逊应该修复他们的用户界面,因为虽然你可以使用a记录,但该字段称为Alternate Cnames,帮助中没有明确说明你可以使用别名。我们可以不使用亚马逊路线53来实现这一点吗?我现有的DNS提供商支持APEX记录。