【问题标题】:EC2/Route53: How Do I Point Apex Record at Load Balancer?EC2/Route53:如何将 Apex 记录指向负载均衡器?
【发布时间】:2013-11-22 03:08:00
【问题描述】:

在亚马逊,我正在尝试为域创建一个 cname,

example.com 

到 Route 53 中的负载平衡器

Examplecom-1058462749.us-west-2.elb.amazonaws.com

但是当我尝试保存记录时,我得到了这个错误:

RRSet of type CNAME with DNS name example.com. 
is not permitted at apex in zone example.com.

当我尝试将其设为 A 记录时,我遇到了类似的问题:

The record set could not be saved because:
- The Value field contains invalid characters 
or is in an invalid format.    

因为负载均衡器的公共 DNS 不是 ipv4 地址。我究竟做错了什么?如何让 example.com 指向负载均衡器?请注意,我确实成功地为负载均衡器的公共 dns 创建了 www.example.com 的 cname。

【问题讨论】:

    标签: amazon-web-services dns amazon-ec2 load-balancing amazon-route53


    【解决方案1】:

    http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingAliasRRSets.html

    您不使用 CNAME,而是使用配置为 ELB 别名的 A 记录。

    当您在创建 A 记录时将别名设置为“是”时,您将看到一个框,您可以在其中选择 ELB,其内部信息将用于为别名提供答案。

    别名是 Route 53 的一项功能,旨在准确支持您正在尝试执行的操作。

    【讨论】:

    • 对于一个支持别名记录的 dns 提供商来说,这将如何实现?
    • 这正是 AWS 在创建 ALIAS 记录的概念时试图解决的问题——DNS 没有有效的方法来处理域的顶点(顶级)记录( zone) 由权威名称服务器以外的任何东西提供服务。 Route 53 中可能有别名记录,因为 Route 53 具有关于如何回答查询的“内部”知识;第三方 DNS 服务器无权访问相同的信息。唯一想到的解决方案是一个 DNS 代理服务器,它可以在后端重新查询 ELB 地址。
    • 此解决方案仅适用于注册域的帐户也恰好是包含负载均衡器的帐户,但情况并非总是如此。如果它们是两个独立的账户,或者负载均衡器根本不与 AWS 关联怎么办?
    • @kloddant 那么你需要做一些不同的事情。问题是关于 ELB 和顶点记录。如果您真的想要一个 ELB 或 ALB 位于区域的顶点,则两者需要位于同一个 AWS 账户中。区域顶点的 CNAME 总是错误的,无处不在,即使一些 DNS 托管服务提供商——完全错误地——允许它。 CloudFlare 有一个他们(不准确地)称之为CNAME flattening 的概念,它实际上在其 DNS 服务器的背面进行 DNS 代理查找。
    【解决方案2】:

    对于CNAME,不能使用顶点域(裸域、根域):

    example.com
    

    实际上,对于 CNAME,使用具有子域的域:

    www.example.com
    blog.example.com
    abc.example.com
    

    【讨论】:

      猜你喜欢
      • 2019-12-23
      • 2021-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-23
      • 2021-12-07
      • 2021-05-26
      • 1970-01-01
      相关资源
      最近更新 更多