我需要提供一种 DNS 裂脑场景,有两个关键目标:
换句话说,我想创建一种“DNS 重写”或覆盖,其中对于某些客户端来说几乎没有记录会有所不同。我希望通过 Server 2016 中的 DNS 策略来实现这一目标,该策略将“split Brain/horizon”描述为预期场景之一,例如https://blogs.technet.microsoft.com/networking/2015/05/12/split-brain -dns-deployment-using-windows-dns-server-policies/ - 但看来我无法实现目标2。
在我的测试中,我创建了一个 ZoneScope,其中包含要返回到匹配客户端的备用 IP 地址和基于客户端子网的查询解析策略,从而实现了目标 1)。但是,如果客户端被匹配为来自“特殊”子网,则它只能解析来自特殊 ZoneScope 的记录,但不能解析来自“默认”范围的记录 - 因此目标 2 失败。
我是否错过了一个配置步骤,如果我的特殊区域范围不包含匹配的记录,则可以回退到默认的区域范围?有人告诉我,这可以通过带有响应区域策略的 BIND DNS 轻松完成,但如果可能的话,我想坚持使用 MS。另外,使用主机文件也是不可能的,因为那些“特殊”服务器并不完全在我们的控制之下。
#define subnet of restricted servers
Add-DnsServerClientSubnet -name SpecialServers -IPv4Subnet 192.168.0.0/24
#define ZoneScope for the special records
Add-DnsServerZoneScope -ZoneName "test.local" -Name "SpecialZoneScope"
#Prepare some testing records in the default scope
Add-DnsServerResourceRecord -ZoneName "test.local" -A -Name HostA -IPv4Address 1.1.1.1
Add-DnsServerResourceRecord -ZoneName "test.local" -A …
Run Code Online (Sandbox Code Playgroud) domain-name-system split-dns windows-server-2016 dns-policies