Compartilhar via


A política de localização geográfica do servidor DNS não funciona conforme o esperado

Aplica-se a: Windows Server 2019, todas as edições Windows Server 2019 Datacenter: Azure Edition – Versão prévia

Sintomas

Considere uma organização que usa uma zona integrada ao AD (escopo de zona padrão) nomeada contoso.com para suas estações de trabalho internas e servidores. A organização deseja implementar uma estrutura DNS de localização geográfica para suas filiais para que os clientes em um site específico possam acessar serviços de intranet de suas sub-redes locais.

A configuração da zona DNS se assemelha à estrutura a seguir.

Sub-rede Espaço de endereço IPv4 Nome do escopo da zona
NorthAmericaSubnet 192.168.3.0/24 NorthAmericaZoneScope
CentralAmericaSubnet 192.168.6.0/24 CentralAmericaZoneScope
SouthAmericaSubnet 192.168.7.0/24 SouthAmericaZoneScope

A organização usa os seguintes cmdlets Windows PowerShell para registrar registros de endereço de host (A):

Add-DnsServerResourceRecord -ZoneName "contoso.com" -A -Name "www" -IPv4Address "192.168.3.40" -ZoneScope "NorthAmericaZoneScope"
Add-DnsServerResourceRecord -ZoneName "contoso.com" -A -Name "www" -IPv4Address "192.168.6.40" -ZoneScope "CentralAmericaZoneScope"
Add-DnsServerResourceRecord -ZoneName "contoso.com" -A -Name "www" -IPv4Address "192.168.7.40" -ZoneScope "SouthAmericaZoneScope"

A organização usa os seguintes cmdlets do PowerShell para definir as políticas:

Add-DnsServerQueryResolutionPolicy -Name "NorthAmericaPolicy" -Action ALLOW -ClientSubnet "eq,NorthAmericaSubnet" -ZoneScope "NorthAmericaZoneScope,1" -ZoneName "contoso.com"
Add-DnsServerQueryResolutionPolicy -Name "CentralAmericaPolicy" -Action ALLOW -ClientSubnet "eq,CentralAmericaSubnet" -ZoneScope "CentralAmericaZoneScope,1" -ZoneName "contoso.com"
Add-DnsServerQueryResolutionPolicy -Name "SouthAmericaPolicy" -Action ALLOW -ClientSubnet "eq,SouthAmericaSubnet" -ZoneScope "SouthAmericaZoneScope,1" -ZoneName "contoso.com"

O resultado desejado é que um cliente tenta localizar um recurso solicitado primeiro no escopo da zona local e, em seguida, no escopo da zona padrão. No entanto, depois que a organização configurar essas políticas, os clientes das sub-redes definidas não poderão resolve com êxito registros hospedados no escopo de zona padrão (contoso.com). Por exemplo, os clientes não podem resolve hostA.contoso.com. Quando recebe essas solicitações, o servidor DNS retorna uma mensagem "Falha do Servidor".

Motivo

Nessa situação, as consultas autoritativas de entrada são avaliadas em relação ao conjunto apropriado de políticas de nível de zona com base em sua ordem de precedência. Parece intuitivo que qualquer consulta que não corresponda a uma política seja atendida automaticamente do escopo da zona padrão. No entanto, isso não é verdade. Em vez disso, qualquer consulta que não corresponda dispara uma falha de resolução de nome. Ou seja, se o servidor DNS receber uma consulta de resolução de nomes para hostA.contoso.com de um cliente especificado em uma política de sub-rede do cliente, o servidor DNS examinará apenas o escopo de zona relacionado.

Resolução

Para configurar as políticas para que o servidor DNS verifique o escopo de zona padrão, além do escopo da zona local, use uma instrução DnsServerQueryResolutionPolicy mais precisa, como o seguinte:

Add-DnsServerQueryResolutionPolicy -Name "NorthAmericaPolicy" -Action ALLOW -ClientSubnet "eq,NorthAmericaSubnet" -ZoneScope "NorthAmericaZoneScope,1" -ZoneName "contoso.com" -FQDN "www.contoso.com"

Observação

Você precisa criar uma DnsServerQueryResolutionPolicy instrução para cada registro que o escopo de zona apropriado contém.