我目前正在学习 AD DS。
我公司的情况如下。
WorkingPC.Asia.Corp.domain.com 172.10.212.62
FileServerA.Asia.Corp.domain.com 172.11.13.21
Asia-DNS-01.Aisa.Corp.domain.com 172.20.10.45
FileServerB.Eur.Corp.domain.com 10.21.11.213
如果我在加入亚洲域的 WorkingPC 中使用 nslookup。
> FileServerA
Server: Asia-DNS-01.Asia.corp.domain.com
Address: 172.20.10.45
Name: FileServerA.Asia.corp.domain.com
Address: 172.11.13.21
> FileServerB
Server: Asia-DNS-01.Asia.corp.domain.com
Address: 172.20.10.45
Non-authoritative answer:
Name: FileServerB.Eur.corp.domain.com
Address: 10.21.11.213
Aliases: FileServerB.corp.domain.com
问题是:
在我的测试环境中,我无法使用单个主机名解析另一个域中的主机。
> FileServerA
Server: Asia-DNS-01.Asia.corp.domain.com
Address: 172.20.10.45
Name: FileServerA.Asia.corp.domain.com
Address: 172.11.13.21
> FileServerB
Server: Asia-DNS-01.Asia.corp.domain.com
Address: 172.20.10.45
*** Asia-DNS-01.Asia.corp.domain.com can't find FileServerB: Non-existent domain
假设我使用 AD DS 部署了多个站点。
有以下域:
Eur.Corp.Domain.com
UK.Eur.Corp.Domain.com
UK 是 Eur 的子域名。
更新问题,以弥补描述不清晰之处。
两个域中有两台资源服务器。
FileServer1 位于根域中,因此服务器的 FQDN 是FileServer1.Eur.Corp.Domain.com
。
子名称中的 FileServer2,因此服务器的 FQDN 是FileServer2.UK.Eur.Corp.Domain.com
。
当我尝试使用单一名称(例如 FileServer1 和 FileServer2)在子目录中查找两个服务器时,两个服务器都可以解析。
当我尝试使用单个名称在 Parent 中 nslookup 两个服务器时。FileServer1 可以解析,但 FileServer2 显示为不存在。然后我使用 FileServer2.UK,它起作用了。
这是正常的吗?
欧元区的服务器被命名为实验室.UK.Eur.Corp.Domain.com.
当我使用 NSLOOKUP 解析网站中的“LAB”时英国.欧元,它可以返回正确的 IP 地址。但如果我尝试在欧元站点,它失败了。
我的公司为子域中的每个资源创建一个 CNAME。例如,将有一个 CNAME LAB.Eur.Corp.Domain.com。但是如何做到这一点?
这个问题有解决办法吗?
答案1
我在这里要讲几点。有些与您的具体问题有关,有些是关于 AD DNS 的一般信息。
AD 域中 DNS 的默认行为是将
_msdcs
区域设置为 AD 集成,并复制到林中的所有 DNS 服务器。这意味着林中的所有 DNS 服务器都将保存此区域的副本。AD 域中 DNS 的默认行为是将域 FQDN 区域设置为 AD 集成并复制到域中的所有 DNS 服务器。这意味着每个域中的所有 DNS 服务器都将保存其 FQDN 区域的副本。
在子域的 DCPROMO 过程中,将在父 DNS 服务器的父区域中创建子域对子 DNS 服务器的委派。来自父域的子域的完全合格 DNS 查询将被“转交给”子 DNS 服务器。
在子域的 DCPROMO 过程中,将在子 DNS 服务器中创建一个转发器,转发到父 DNS 服务器。这不是条件转发器(也不需要)。您应该在子 DNS 服务器属性中的“转发器”选项卡上看到它。子 DNS 服务器会将其不具有权威性的 DNS 区域查询转发到父服务器。这与我的下一个观点相关。
DNS 委托可完成来自子域的父区域记录单标签查询的名称解析。例如,如果从子域对 运行 nslookup
FileServer1
,则第一个查询实际上是FileServer1.UK.Eur.Corp.Domain.com
(因为子域主 DNS 后缀附加到查询中)。如果该操作失败(返回 NXDOMAIN),DNS 委托将发送一个对 的查询FileServer1.Eur.Corp.Domain.com
,该查询将转发到父 DNS 服务器(因为子 DNS 服务器仅对该UK.Eur.Corp.Domain.com
区域具有权威性。对所有其他域名的查询都将转发到父服务器。)。父服务器对该Eur.Corp.Domain.com
区域具有权威性,因此会解析该查询。如果查询是 ,www.google.com
则子 DNS 服务器将再次将查询转发到父 DNS 服务器,而父 DNS 服务器将使用其配置的转发器或根提示来解析查询。为了使父域中的主机能够解析子域中的单标签名称,需要为它们配置包含子域 DNS 后缀的 DNS 后缀搜索列表。您可以使用组策略为所有父域成员配置此项。请注意,此 GPO 设置会覆盖主 DNS 后缀和连接特定的 DNS 后缀,因此您需要将父 DNS 后缀和子 DNS 后缀都添加到此组策略设置中(
Eur.Corp.Domain.com
并且UK.Eur.Corp.Domain.com
)。另请注意,您需要配置此仅有的在父域中。
答案2
大约有 3 种方法可以做到这一点,而不必经历您所描述的 CNAME 恐惧。
所有这些都是通过 DNS 管理控制台或 powershell 配置的(需要在 server 2012 之前下载模块)。显然,DC 之间需要 DNS 连接。
编辑:所有这些都假定所有三个域都不能从 www 完全看到。
全球货运代理 DNS 解析倾向于通过委派遵循“向下”路径。您的设置已经可以正常工作(即 LAB.UK.Eur.Corp.Domain.com 从其父域解析),这应该是由于 NS 记录指向 LAB 的 DC(或有条件转发 - 见下文)。您可以设置一个“全局转发器”,它将所有未在本地托管的记录请求发送到父域的 DC。
此设置可能会干扰互联网连接,因为对“www.google.com”(以及其他所有内容)的查询将通过您的全球转发器进行。
有条件转发 与全局转发类似,您可以精确指定查询应发往特定域的位置。因此,您可以将针对英国的查询直接发往英国 DC,将针对欧元的查询直接发往欧元 DC。
内部根提示 我不推荐这个,而且这个设置涉及太多内容,我无法深入研究(我做过一次,但做得很糟糕)但为了完整性,这里给出这个概念。