为什么不能使用与子域重复的 DC 计算机名称作为父域?

为什么不能使用与子域重复的 DC 计算机名称作为父域?

我对 AD 和 Windows Server 还不熟悉,但从我在 youtube 上看到的内容来看,公司可能会遇到以下情况:

www.example.com
www.eng.example.com

我认为这意味着 example.com 域中有一个名为 www 的 Web 服务器,而 eng.example.com 域中还有一个名为 www 的不同 Web 服务器。这意味着您可以在父域及其子域上使用重复的计算机名称。然而,当我在实践中尝试这样做时,在尝试将第二台 Windows Server 2012 计算机提升为 DC 时出现此错误:

A domain controller with the specified name already exists

这是否意味着,在上述情况下,www 并不是指特定的机器,而是公司使用 DNS 将 www.example.com 别名为 webserver1.example.com,将 www.eng.example.com 别名为 webserver2.eng.example.com?

答案1

如果我正确理解了您的问题,那么答案是肯定的,您通常会使用 DNS 将不同的主机名“别名”到同一台计算机,而这些计算机的名称可能完全不同。

举个例子 - 假设有两个不同的 Web 服务器,您不需要为它们指定计算机名称www,即使这是用户访问站点时使用的 URL 的开头。假设您的 AD 域为example.com,并且您将 Web 服务器命名为web01web02,则它们的完全限定名称将是web01.example.com.web02.example.com.

设置示例的一种方法可能是:

  • www.example.comCNAME是DNS 中的别名 ( )web01.example.com
  • www.eng.example.comCNAME是DNS 中的别名 ( )web02.example.com

您甚至可以将两个网站托管在同一台服务器上,并使用主机标头允许 HTTP 服务器根据用于访问网站的 DNS 名称为不同的网站提供服务。在这种情况下,DNS 可能如下所示:

  • www.example.com是以下项的别名 ( CNAME)web01.example.com
  • www.eng.example.com也是CNAMEweb01.example.com

编辑

由于您的问题提到了 AD,我假设您的问题与内部网站(例如 Intranet)有关。虽然我在示例中使用了“example.com”以保持简单,但在现实世界中,您通常应该为内部 DNS 选择一个不会与 Internet DNS 域冲突的域名。请参阅微软的建议

答案2

dbr 所写的内容对于 DNS 有效,但不是您所收到的错误消息的真正原因。Active Directory 是多种协议的组合(LDAP凯尔伯罗斯、DNS 等)在我们有 Active Directory 之前,我们有“工作组”,以及与之一起的协议 NetBIOS(实际上氮杂环丁烷)和 WINS。

使用 LDAP,您现在也有不同的域。Microsoft 通过使 LDAP 域具有与 DNS 域名相同的名称简化了很多事情。但从技术上讲,它不必如此。您之前收到的错误消息是由于 LDAP 域而不是 DNS 域造成的。我建议您阅读这一页在 Microsoft Technet 上,您可以了解林和域之间的区别。您可以在一个林中拥有多个域,也可以在不同的域中拥有相同的服务器名称(尽管我不建议这样做)。

答案3

这是一个老问题,有可接受的答案,但我最终通过 Google 来到了这里,因此除了 @dbr 关于 CNAME 的答案之外:

在 Windows 2012 r2 之前,活动目录可以在同一林的不同域中使用相同的计算机名或 SPN。

这基本上是正确的,但根据我糟糕的记忆,在 2012 r2 之前,AD 偶尔也会拒绝具有相同名称的计算机。那时,AD 大多只是抱怨日志中的 SPN 相同。有许多不同的错误消息与此相关。

在 Windows 2012 r2 中,Windows默认检查重复的 SPN。可以使用热修复

因此,即使 AD 在其第一个版本中的初始理论前提是通过基于分层 DNS 名称系统建立命名空间来消除平面名称数据库,但实际上微软似乎已经在森林中强制执行了名称唯一性。

相关内容