为 3 个域控制器创建 DNS A 记录

为 3 个域控制器创建 DNS A 记录

我在我们的网络上设置了一个新域,它由 2 个域控制器 dc1、dc2 组成。我可以看到 2 个控制器的 A 记录。但我需要进行负载平衡,以便我可以在单个条目中引用 2 个 dc。

我为不同的 IP 创建了两个同名的 A 记录,即 dc.domain.com。这是标准程序吗?

答案1

活动目录已经有了DNS 负载平衡的一种形式。您找错地方了。

A记录只是说明哪个控制器具有哪个 IP 地址。客户端访问每个域服务(LDAP、Kerberos、全局目录 LDAP 等)的位置都配置了SRV记录。如果您不做任何花哨的事情,您SRV的域中的记录将指向每个服务的每个域控制器。

以下是 Active Directory 域 DNS 区域的典型结构:

example.com.                               3600 IN SOA      dc1.example.com. admin.example.com 66593 900 600 86400 3600
example.com.                               3600 IN NS       dc1.example.com.
example.com.                               3600 IN NS       dc2.example.com.
example.com.                               600  IN A        192.168.3.1
example.com.                               600  IN A        192.168.4.1
_gc._tcp.example.com.                      600  IN SRV      0 100 3268 dc2.example.com.
_gc._tcp.example.com.                      600  IN SRV      0 100 3268 dc1.example.com.
_kerberos._tcp.example.com.                600  IN SRV      0 100 88 dc2.example.com.
_kerberos._tcp.example.com.                600  IN SRV      0 100 88 dc1.example.com.
_kpasswd._tcp.example.com.                 600  IN SRV      0 100 464 dc2.example.com.
_kpasswd._tcp.example.com.                 600  IN SRV      0 100 464 dc1.example.com.
_ldap._tcp.example.com.                    600  IN SRV      0 100 389 dc2.example.com.
_ldap._tcp.example.com.                    600  IN SRV      0 100 389 dc1.example.com.
_kerberos._udp.example.com.                600  IN SRV      0 100 88 dc2.example.com.
_kerberos._udp.example.com.                600  IN SRV      0 100 88 dc1.example.com.
_kpasswd._udp.example.com.                 600  IN SRV      0 100 464 dc2.example.com.
_kpasswd._udp.example.com.                 600  IN SRV      0 100 464 dc1.example.com.
DomainDnsZones.example.com.                600  IN A        192.168.3.1
DomainDnsZones.example.com.                600  IN A        192.168.4.1
_ldap._tcp.DomainDnsZones.example.com.     600  IN SRV      0 100 389 dc2.example.com.
_ldap._tcp.DomainDnsZones.example.com.     600  IN SRV      0 100 389 dc1.example.com.
ForestDnsZones.example.com.                600  IN A        192.168.3.1
ForestDnsZones.example.com.                600  IN A        192.168.4.1
_ldap._tcp.ForestDnsZones.example.com.     600  IN SRV      0 100 389 dc2.example.com.
_ldap._tcp.ForestDnsZones.example.com.     600  IN SRV      0 100 389 dc1.example.com.
dc1.example.com.                          3600  IN A        192.168.3.1
dc2.example.com.                          3600  IN A        192.168.4.1
_msdcs.example.com.                        3600 IN NS       dc1.example.com.
_gc._tcp.Default-First-Site-Name._sites.example.com. 600 IN SRV 0 100 3268 dc1.example.com.
_kerberos._tcp.Default-First-Site-Name._sites.example.com. 600 IN SRV 0 100 88 dc1.example.com.
_ldap._tcp.Default-First-Site-Name._sites.example.com. 600 IN SRV 0 100 389 dc1.example.com.
_ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.example.com. 600 IN SRV 0 100 389 dc1.example.com.
_ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.example.com. 600 IN SRV 0 100 389 dc1.example.com.
_gc._tcp.alter-site._sites.example.com. 600 IN SRV 0 100 3268 dc2.example.com.
_kerberos._tcp.alter-site._sites.example.com. 600 IN SRV 0 100 88 dc2.example.com.
_ldap._tcp.alter-site._sites.example.com. 600 IN SRV 0 100 389 dc2.example.com.
_ldap._tcp.alter-site._sites.DomainDnsZones.example.com. 600 IN SRV 0 100 389 dc2.example.com.
_ldap._tcp.alter-site._sites.ForestDnsZones.example.com. 600 IN SRV 0 100 389 dc2.example.com.

如果你创建站点,您将获得有关它们的附加记录。这应该使某些计算机优先询问其本地域控制器而不是远程域控制器。这里dc2属于站点alter-site,因此该站点中的任何计算机都会首先询问它。如果您保留所有默认设置,则两个控制器都将位于默认站点中Default-First-Site-Name

您可以通过改变以下方式改变控制器之间的负载分配:SRV。看到“100”了吗?这些是重量。如果您为一个 DC 设置 67,为另一个 DC 设置 33,则第一个 DC 将获得 2/3 的请求,而另一个 DC 将获得 1/3。每个 DC 前面都有“0”SRV。如果您为一个 DC 设置 67,为另一个 DC 设置 33,则第一个 DC 将获得 2/3 的请求,而另一个 DC 将获得 1/3。每条记录优先事项;如果您有更高优先级的服务器可供使用,则根本不会查询较低优先级的服务器。请查看SRV记录描述以了解详细信息;互联网上有很多解释,包括本网站。

有一些记录是“不对称的”。例如,SOA记录中包含特定的 DNS 服务器名称。但在这种情况下,这些记录很少使用,因此不会造成任何瓶颈。

还有一个重要注意事项SYSVOL。当客户端登录时,在检查密码后(这涉及到凯尔伯罗斯服务),它们向域请求组策略,并使用领域名称,而不是特定的 DC 名称,如下所示:(\\example.com\SYSVOL而不是,例如\\dc1.example.com\SYSVOL)。您可以看到域顶点有多个A记录,每个域控制器一个(示例的第 4 行和第 5 行)。客户端将使用随机选择的A记录进行连接,因此每个 DC 将具有大致相同的份额。

答案2

您只需使用域名即可进行负载平衡。通常,每个域控制器在父记录中都有一个 A 记录。

注意:这是不是高可用性,所以不应该被认为是这样的。

相关内容