我有多个站点和多个子网。每个站点都有一个运行 DNS 的域控制器。我希望客户端计算机/设备从该站点的本地 DNS 服务器查询 arecord.domain.local。
DNS 服务器记录被复制到所有站点。每个站点都有相同的记录。
这些设备位于不同的子网中,并且只能访问本地站点 DC。目前,我已启用“循环”和“网络掩码排序”。但是,由于这些设备与 DC 位于不同的子网中,因此它似乎不适用于这些设备。
我希望当本地站点的设备查询 arecord.domain.local 时返回本地站点的 A 记录
您对如何使用 Windows Server 2012 r2 实现这一点有何想法?
域控制器:
子网:255.255.255.0
IP:192.168.10.1
IP:192.168.20.1
IP:192.168.30.1
设备:
子网:255.255.255.0
IP:192.168.12.1
IP:192.168.22.1
IP:192.168.32.1
DNS A 记录:
arecord.domain.local > 192.168.10.1
arecord.domain.local > 192.168.20.1
arecord.domain.local > 192.168.30.1
谢谢
答案1
这是通过修改LocalNetPriorityNetMask
设置来完成的。它会告诉您的 DNS 服务器哪些网络是本地网络。不幸的是,它是基于“子网掩码”的,并且您没有使用 .10、.20、.30 约定的逻辑子网边界。因此,这不是一个完美的解决方案,但您可能能够根据您使用的真实网络地址使其工作。
首先,以下是有关使用 LocalNetPriority 和 LocalNetPriorityNetmask 的信息。可以通过 DNS 管理控制台、命令行和/或组策略通过添加/修改以下注册表项对其进行部分配置:
HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters\LocalNetPriority
HKLM\SYSTEM\CurrentControlSet\Services\DNS\Parameters\LocalNetPriorityNetMask
LocalNetPriorityNetmask 更类似于 Cisco 通配符掩码。即它是倒置的。因此,在您的例子中,一个示例是将 LocalNetPriorityNetMask 更改为使用子网掩码 /21 (255.255.248.0) 例如0x000007FF
就 DNS 而言,这会将系统置于“同一”本地网络上的以下 IP 范围内:
192.168.8.0 - 192.168.15.255
192.168.16.0 - 192.168.23.0
这涵盖了您的两个示例。但第三个示例却不尽如人意。如果我们继续在所有 DNS 服务器上使用此网络掩码,我们将获得以下 IP 范围:
192.168.24.0 - 192.168.31.255
这不涵盖您在 .30 位置提供的两个 IP 地址。遗憾的是,您必须将 LocalNetPriorityNetMask 的大小增加到 /18 才能覆盖 .30 和 .32 IP 地址,而这不幸的是将包括整个范围 192.168.0.0 - 192.168.63.255。
因此,您会发现这种情况会失效,因为您的 IP 寻址方案不遵循逻辑子网边界。您必须了解如何才能实现这一点。但是,以上信息就是如何实现的。