我尝试回答以下问题:
我有域 example.com,子域为:subdomain.example.com,子域为一个独立区域。我还有 example.com 的 NS1 和 subdomain.example.com 的 NS2,如果我想从 example.com 访问 subdomain.example.com 中的条目。什么时候我需要 NS1 上的 NS2 的 A 记录,或者其他方式,什么时候 NS1 上的 NS 记录就足够了。
我搜索了一下,据我所知:如果在区域 subdomain.example.com 中存在 NS2 的 A 记录,那么我就不需要在 example.com 中添加额外的 A 记录。
它是否正确?
由于英语不是我的母语,我对语法错误深表歉意。
答案1
NS
和A
记录完全不同,实现不同的目标。
记录A
将名称与 IP 地址关联起来。NS
记录基本上表示:此区域由此名称服务器(名称)处理。
如果您使用真实姓名,您的问题就会简单得多,包括对您自己而言。
如果ns1.example.com
和ns2.example.com
是主机名,则由于它们托管某些服务,因此需要可访问,然后它们需要A
记录(或者AAAA
如果您停止使用传统的 IPv4 互联网,则需要记录)。
由于ns1.example.com
(和ns2
) 位于example.com
区域内,因此区域的权威名称服务器托管的区域文件example.come
需要具有该A
记录。
现在,如果您说subzone.example.com
必须委派(请记住,这不会因为有一个点而自动成为事实,委派仅在区域负责人需要和希望时才会发生,就像将部分树的控制权交给另一个实体一样),并且如果ns1
和ns2.example.com
是此子区域的权威名称服务器,那么您将需要NS
在example.com
和在subzone.example.com
区域文件中。
那么胶水呢?从概念上讲,它很简单,但由于它可能会产生问题,因此最好避免使用这种方法,直到您完全掌握 DNS 的工作原理。如果给定域名使用某些主机名位于同一区域内的名称服务器作为权威名称服务器,则父区域也需要直接A
(或AAAA
)发布这些主机名的记录,否则根本无法正确进行解析。
换句话说,您想要解析www.example.com
,并且example.com
具有ns1.example.com
和ns2.example.com
作为权威名称服务器,则执行以下操作(发生简化过程):
- 您(从现在开始,您实际上是您正在使用的递归名称服务器)向一个根服务器(其 IP 地址是硬编码的并定期刷新)询问
www.example.com
- 根区域会告诉您,它对该名称一无所知,但它知道权威名称服务器,因为该名称
.com
是.com
由.
(根)委派的 - 现在你重新查询,但这次是针对 的权威域名服务器之一
com
:他们会告诉你他们一无所知www.example.com
,但他们知道example.com
,因为它是委托的;因此它将向你发回一组对 具有权威性的域名服务器example.com
- 此时,如果你只有
ns1.example.com
并且ns2.example.com
能够联系他们询问www.example.com
你显然首先需要解决他们的名字,为此你当然需要从这个列表中的第一个点开始……因此你看到了僵局 - 实际上,出于这个特定原因,在步骤 3 中,权威域名服务器
.com
将为您提供权威域名服务器集example.com
和他们的 IP 地址,这就是所谓的粘合记录:A
/AAAA
父区域中需要进行解析的记录。
如果您使用,您可以准确地看到上述过程dig +trace
。
PS:通常可以简化对系统的理解,记住树中没有节点是特殊的(如果您愿意的话,除了根节点),并且任何事情都可能以相同的方式发生在树的任何“级别”或深度。
答案2
如果您运行的是 Windows 服务器,那么您是对的。只要 NS1 和 NS2 都位于同一个 AD 林中,则无需其他 DNS 设置即可完成您的需要。