AWS 的 DNS CNAME 到 NS 记录

AWS 的 DNS CNAME 到 NS 记录

我正在 AWS 上开展一个项目,我们需要使用的域名不受我们控制。因此,他们为我们设置了一个子域名 CNAME。在我们的 F5 中,我们为在 route53 中分配的 AWS 名称服务器添加了 NS 记录。当我对该名称进行挖掘时,我可以看到 CNAME 并到达我们,但它永远不会到达 AWS 名称服务器或该 ZoneRecord 中的最终 A 记录。

是否可以从 CNAME 转到 NS 再转到 A 记录?或者,最终需要发生的是从 CNAME 转到 NS 再转到 APIGateway?

我见过一些包含部分问题的例子,但却找不到任何详细说明我到底想做什么的例子或文档。

我还尝试通过如下方式设置我自己的域来去除 F5:

test.domain1.tld CNAME to test.cname.domain2.tld
test.cname.domain2.tld IN NS ns-2134.awsdns-12.org

在 AWS Route53 托管区域 test.domain1.tld 中:

test.domain1.tld A 123.123.123.123

答案1

您有一个逻辑错误。客户端(您的主机)上的解决步骤如下:

  1. test.domain1.tld在您的名称服务器( 的 NS )上解析domain1.tldCNAME test.cname.domain2.tld
  2. test.cname.domain2.tld按照先前的响应交换要解析的域(“规范名称”)。
  3. test.cname.domain2.tld在 的名称服务器cname.domain2.tld(可能是 的 NS )上进行解析domain2.tldNS ns-2134.awsdns-12.org
  4. test.cname.domain2.tld在 AWS NS ns-2134.awsdns-12.org⇒上解析NXDOMAIN(不存在的域)

重点是,步骤 2 替换了相关域,因此原始域永远不会到达 AWS NS。您可以test.cname.domain2.tld在 AWS NS 中使用,但正如您所说,您无法控制它,您可能应该只更改步骤 1:test.domain1.tldNS ns-2134.awsdns-12.orgNS记录将委托放入您的名称服务器,因此任何A/ AAAA/...(不是全部,但很多)请求都将重定向到指定的 NS。

如果任何名称服务器配置为允许递归,并且请求中设置了递归位(它几乎总是由客户端设置),那么该名称服务器将在进一步解析中承担客户端的角色。但步骤将保持不变,只是由作为客户端的递归服务器代表原始客户端执行。然后,原始客户端将获得最终答案,就好像它是由该递归名称服务器直接(透明地)提供的一样。

相关内容