Usar política de DNS para gerenciamento de tráfego baseado em localização geográfica com implantações primárias e secundárias
Você pode usar este tópico para saber como criar uma política DNS para gerenciamento de tráfego baseado em localização geográfica quando sua implantação de DNS inclui servidores DNS primários e secundários.
O cenário anterior, Usar a Política DNS para gerenciamento de tráfego baseado em localização geográfica com servidores primários, forneceu instruções para configurar a política DNS para gerenciamento de tráfego baseado em localização geográfica em um servidor DNS primário. Na infraestrutura da Internet, no entanto, os servidores DNS são amplamente implantados em um modelo primário-secundário, onde a cópia gravável de uma zona é armazenada em servidores primários selecionados e seguros, e cópias somente leitura da zona são mantidas em vários servidores secundários.
Os servidores secundários usam os protocolos de transferência de zona AXFR (Transferência Autoritativa) e IXFR (Transferência de Zona Incremental) para solicitar e receber atualizações de zona que incluem novas alterações nas zonas nos servidores DNS primários.
Observação
Para obter mais informações sobre a AXFR, consulte a Solicitação de Comentários 5936 da Força-Tarefa de Engenharia da Internet (IETF). Para obter mais informações sobre o IXFR, consulte a Solicitação de Comentários 1995 da Força-Tarefa de Engenharia da Internet (IETF).
Exemplo de gerenciamento de tráfego com base em localização geográfica primária e secundária
Confira a seguir um exemplo de como é possível usar a política DNS em uma implantação primária-secundária para obter o redirecionamento de tráfego com base no local físico do cliente que executa uma consulta DNS.
Este exemplo usa duas empresas fictícias - Contoso Cloud Services, que fornece soluções de hospedagem na Web e domínio, e o Woodgrove Food Services, que fornece serviços de entrega de alimentos em várias cidades do mundo, e que tem um site chamado woodgrove.com.
Para garantir que woodgrove.com clientes obtenham uma experiência responsiva de seu site, a Woodgrove quer clientes europeus direcionados para o datacenter europeu e clientes americanos direcionados para o datacenter dos EUA. Os clientes localizados em outros lugares do mundo podem ser direcionados para qualquer um dos datacenters.
A Contoso Serviços de Nuvem tem dois datacenters, um nos EUA e outro na Europa, nos quais ela hospeda seu portal de pedidos de comida para woodgrove.com.
A implantação do DNS da Contoso inclui dois servidores secundários: ServidorSecundario1, com o endereço IP 10.0.0.2; e ServidorSecundario2, com o endereço IP 10.0.0.3. Esses servidores secundários estão atuando como servidores de nomes nas duas regiões diferentes, com ServidorSecundario1 localizado na Europa e ServidorSecundario2 localizado nos EUA.
Há uma cópia de zona gravável primária no ServidorPrimario (endereço IP 10.0.0.1), em que as alterações de zona são feitas. Com as transferências de zona regulares para os servidores secundários, os servidores secundários estão sempre atualizados com quaisquer novas alterações da zona no ServidorPrimario.
A ilustração a seguir descreve esse cenário.
Como funciona o sistema de DNS Primário-Secundário
Quando você implanta o gerenciamento de tráfego baseado em localização geográfica em uma implantação de DNS primária-secundária, é importante entender como as transferências normais de zona primária-secundária ocorrem antes de aprender sobre transferências de nível de escopo de zona. As seções a seguir fornecem informações sobre transferências de zona e de nível de escopo de zona.
- Transferências de zona em uma implantação primária-secundária de DNS
- Transferências de nível de escopo de zona em uma implantação primária-secundária de DNS
Transferências de zona em uma implantação primária-secundária de DNS
Você pode criar uma implantação primária-secundária de DNS e sincronizar zonas com as etapas a seguir.
- Quando você instala o DNS, a zona primária é criada no servidor DNS primário.
- No servidor secundário, crie as zonas e especifique os servidores primários.
- Nos servidores primários, você pode adicionar os servidores secundários como secundários confiáveis na zona primária.
- As zonas secundárias fazem uma solicitação de transferência de zona completa (AXFR) e recebem a cópia da zona.
- Quando necessário, os servidores primários enviam notificações aos servidores secundários sobre as atualizações de zona.
- Os servidores secundários fazem uma solicitação de transferência de zona incremental (IXFR). Por isso, os servidores secundários permanecem sincronizados com o servidor primário.
Transferências de nível de escopo de zona em uma implantação primária-secundária de DNS
O cenário de gerenciamento de tráfego requer etapas adicionais para particionar as zonas em diferentes escopos de zona. Por isso, etapas adicionais são necessárias para transferir os dados dentro dos escopos de zona para os servidores secundários e transferir políticas e sub-redes de cliente DNS para os servidores secundários.
Depois de configurar sua infraestrutura DNS com servidores primários e secundários, as transferências de nível de escopo de zona são executadas automaticamente pelo DNS, usando os processos a seguir.
Para garantir a transferência no nível do escopo de zona, os servidores DNS usam os Mecanismos de Extensão para DNS (EDNS0) OPT RR. Todas as solicitações de transferência de zona (AXFR ou IXFR) das zonas com escopos se originam com um EDNS0 OPT RR, cuja ID de opção é definida como "65433" por padrão. Para obter mais informações sobre o EDNS0, consulte a Solicitação para Comentários 6891 da IETF.
O valor do OPT RR é o nome do escopo da zona para o qual a solicitação está sendo enviada. Quando um servidor DNS primário recebe esse pacote de um servidor secundário confiável, ele interpreta a solicitação como proveniente desse escopo de zona.
Se o servidor primário tiver esse escopo de zona, ele responderá com os dados de transferência (XFR) desse escopo. A resposta contém um OPT RR com a mesma ID de opção "65433" e valor definido como o mesmo escopo de zona. Os servidores secundários recebem essa resposta, recuperam as informações de escopo da resposta e atualizam esse escopo específico da zona.
Após esse processo, o servidor primário mantém uma lista de secundários confiáveis que enviaram essa solicitação de escopo de zona para notificações.
Para qualquer atualização adicional em um escopo de zona, uma notificação IXFR é enviada aos servidores secundários, com o mesmo OPT RR. O escopo de zona que recebe essa notificação faz a solicitação IXFR que contém esse OPT RR e segue o mesmo processo descrito acima.
Como configurar a política DNS para gerenciamento de tráfego baseado em localização geográfica primária-secundária
Antes de começar, verifique se você concluiu todas as etapas no tópico Usar a Política DNS para Gerenciamento de Tráfego Baseado em Localização Geográfica com Servidores Primários e se o servidor DNS primário está configurado com zonas, escopos de zona, Sub-redes de cliente DNS e política DNS.
Observação
As instruções neste tópico para copiar sub-redes de cliente DNS, escopos de zona e políticas DNS de servidores DNS primários para servidores DNS secundários são para sua configuração e validação iniciais de DNS. No futuro, talvez você queira alterar as sub-redes do cliente DNS, os escopos de zona e as configurações de políticas no servidor primário. Nessa circunstância, você pode criar scripts de automação para manter os servidores secundários sincronizados com o servidor primário.
Para configurar a política do DNS para respostas de consulta baseadas em localização geográfica primária e secundária, execute as etapas a seguir.
- Criar zonas secundárias
- Definir as configurações de transferência de zona na zona primária
- Copiar as sub-redes do cliente DNS
- Criar os escopos de zona no servidor secundário
- Configurar a política DNS
As seções a seguir fornecem instruções de configuração detalhadas.
Importante
As seções a seguir incluem os comandos do Windows PowerShell de exemplo que contêm os valores de exemplo para muitos parâmetros. Substitua os valores de exemplo nesses comandos por valores adequados a sua implantação antes de executar esses comandos.
A associação ao DnsAdmins, ou equivalente, é necessária para executar os procedimentos a seguir.
Criar zonas secundárias
Você pode criar a cópia secundária da zona que deseja replicar para o ServidorSecundario1 e ServidorSecundario2 (supondo que os cmdlets estejam sendo executados remotamente de um único cliente de gerenciamento).
Por exemplo, você pode criar a cópia secundária de www.woodgrove.com no ServidorSecundario1 e no ServidorSecundario2.
Use os comandos do Windows PowerShell a seguir para criar zonas secundárias.
Add-DnsServerSecondaryZone -Name "woodgrove.com" -ZoneFile "woodgrove.com.dns" -MasterServers 10.0.0.1 -ComputerName SecondaryServer1
Add-DnsServerSecondaryZone -Name "woodgrove.com" -ZoneFile "woodgrove.com.dns" -MasterServers 10.0.0.1 -ComputerName SecondaryServer2
Para obter mais informações, confira Add-DnsServerSecondaryZone.
Definir as configurações de transferência de zona na zona primária
Você deve definir as configurações de zona primária para que:
- As transferências de zona do servidor primário para os servidores secundários especificados sejam permitidas.
- As notificações de atualização de zona sejam enviadas pelo servidor primário para os servidores secundários.
Você pode usar os comandos do Windows PowerShell a seguir para definir as configurações de transferência de zona na zona primária.
Observação
No comando de exemplo a seguir, o parâmetro -Notify especifica que o servidor primário enviará notificações sobre atualizações para a lista selecionada de secundários.
Set-DnsServerPrimaryZone -Name "woodgrove.com" -Notify Notify -SecondaryServers "10.0.0.2,10.0.0.3" -SecureSecondaries TransferToSecureServers -ComputerName PrimaryServer
Para obter mais informações, confira Set-DnsServerPrimaryZone.
Copiar as sub-redes do cliente DNS
Você deve copiar as sub-redes do cliente DNS do servidor primário para os servidores secundários.
Você pode usar os comandos do Windows PowerShell a seguir para copiar as sub-redes para os servidores secundários.
Get-DnsServerClientSubnet -ComputerName PrimaryServer | Add-DnsServerClientSubnet -ComputerName SecondaryServer1
Get-DnsServerClientSubnet -ComputerName PrimaryServer | Add-DnsServerClientSubnet -ComputerName SecondaryServer2
Para obter mais informações, confira Add-DnsServerClientSubnet.
Criar os escopos de zona no servidor secundário
Você deve criar os escopos de zona nos servidores secundários. No DNS, os escopos de zona também começam a solicitar XFRs do servidor primário. Com qualquer alteração nos escopos de zona no servidor primário, uma notificação que contém as informações de escopo da zona é enviada aos servidores secundários. Os servidores secundários podem atualizar seus escopos de zona com alteração incremental.
Você pode usar os comandos do Windows PowerShell a seguir para criar os escopos de zona nos servidores secundários.
Get-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName PrimaryServer|Add-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName SecondaryServer1 -ErrorAction Ignore
Get-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName PrimaryServer|Add-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName SecondaryServer2 -ErrorAction Ignore
Observação
Nestes comandos de exemplo, o parâmetro -ErrorAction Ignore está incluído, pois existe um escopo de zona padrão em cada zona. O escopo de zona padrão não pode ser criado ou excluído. O pipelining resultará em uma tentativa de criar esse escopo e falhará. Como alternativa, você pode criar os escopos de zona não padrão em duas zonas secundárias.
Para obter mais informações, confira Add-DnsServerZoneScope.
Configurar a política DNS
Depois de criar as sub-redes, as partições (escopos de zona) e adicionar registros, crie políticas que conectem as sub-redes e partições, para que, quando uma consulta vier de uma origem em uma das sub-redes do cliente DNS, a resposta da consulta seja retornada do escopo correto da zona. Nenhuma política é necessária para mapear o escopo de zona padrão.
Use os comandos do PowerShell do Windows a seguir para criar uma política do DNS que vincule as sub-redes do cliente DNS e os escopos de zona.
$policy = Get-DnsServerQueryResolutionPolicy -ZoneName "woodgrove.com" -ComputerName PrimaryServer
$policy | Add-DnsServerQueryResolutionPolicy -ZoneName "woodgrove.com" -ComputerName SecondaryServer1
$policy | Add-DnsServerQueryResolutionPolicy -ZoneName "woodgrove.com" -ComputerName SecondaryServer2
Para obter mais informações, confira Add-DnsServerQueryResolutionPolicy.
Agora, os servidores secundários do DNS estão configurados com as políticas do DNS necessárias para redirecionar o tráfego com base na localização geográfica.
Quando o servidor do DNS recebe consultas de resolução de nomes, o servidor do DNS avalia os campos na solicitação de DNS em relação às políticas do DNS configuradas. Se o endereço IP de origem na solicitação de resolução de nomes corresponder a qualquer uma das políticas, o escopo de zona associado será usado para responder à consulta e o usuário será direcionado para o recurso geograficamente mais próximo deles.
É possível criar milhares de políticas do DNS de acordo com seus requisitos de gerenciamento de tráfego e todas as novas políticas são aplicadas dinamicamente, sem reiniciar o servidor do DNS, em consultas de entrada.