Aar*_*ain 1 domain-name-system cname-record amazon-web-services
我们正在将一些站点从其他提供商迁移到 AWS。我们当前的负载均衡器在单个 IP 上可用,因此所有 DNS 条目都是使用 A 记录创建的,例如:
A example.com 192.0.2.0
您可能知道,AWS Elastic Load Balancer 已经为其负载均衡器提供了 A 记录,因此这些站点是使用 CNAME 记录创建的,例如:
CNAME example.com production-lb1-<numbers>.us-west-1.elb.amazonaws.com
我们用 900 秒的 TTL 设置该记录,我们还没有看到它传播出去
dig all example.com
是否有一些神奇的 DNS 内部机制可以阻止这样的名称冲突?IE 它不想创建 CNAME,因为 A 和 CNAME 会指向矛盾的信息?
那么这是否意味着我必须删除 A 记录,然后添加 CNAME?DNS 控制器是否足够聪明,不会在没有任何内容的情况下丢弃我的网站?IE 我真的不希望 A 名称在 CNAME 尚未启动时消失。想法?
旧A 记录的TTL 是多少?例如,如果是 43200(12 小时),则旧记录将在全球 DNS 缓存中保留长达 12 小时。
对此的解决方案是在更改记录之前提前将旧记录上的 TTL 降低到大约 300(5 分钟)。
您不能在域根(又名 apex)中使用CNAME。即example.com A 123.456.789.123是有效的,虽然example.com CNAME production-lb1-...elb.amazonaws.com是无效的。这可能就是您的 DNS 服务器忽略它的原因。
对此的解决方案是将域迁移example.com到 AWS Route53,然后使用ALIAS Arecord 而不是CNAME. 这种方式请求example.com返回 ELB 的实际 IP 地址而不是 ELB 的 CNAME。这是一个微小但至关重要的区别。
不幸的是,ALIAS 仅在域和负载均衡器都在 AWS 上时才有效。
请参阅此处:为什么域的根不能是 CNAME
希望有帮助:)
| 归档时间: |
|
| 查看次数: |
156 次 |
| 最近记录: |