Algumas configurações que podem ser feitas sobre o balanceamento de registros DNS

DNS Round-robin é uma técnica de distribuição de carga, balanceamento de carga, de tolerância a falhas, provisionamento múltiplo e redundante de hosts através do registro DNS. Seu conceito é simples, em caso de múltiplos registros iguais o DNS revesa a resposta sobre esse objeto a cada vez que é consultado.

Porém existem problemas nesse processo, o DNS round-robin balanceia a carga de solicitações mas ele não evita a consulta caso uma dessas respostas seja mais lenta. Além disso a decisão entre balancear ou não depende da máscara registrada e de quem solicitou/perguntou (por exemplo, se o servidor DNS possuí 3 registros idênticos que apontam para IPs classes B diferentes, e ele verificar que o endereço de origem é da mesma classe C que um dos registros o servidor não irá balancear entre os 3 registros mas irá responder somente para o registro que aparentemente é da mesma rede do solicitante)

Agora vamos explicar como mudar algumas dessas configurações

Mudando a política de balanceamento (RoundRobin)

Embora a configuração padrão no Windows Server 2003 seja basear a proximidade na Classe C

Primeiro entenda qual valor pode ser definido e qual a máscara de rede ele representa

MáscaraValor
255.255.255.1920x0000003F
255.255.255.1280x0000007F
255.255.255.00x000000ff
255.255.0.00x0000ffff
255.0.0.00x00ffffff

Digamos aqui que você queira mudar a máscara para B. Abra o prompt de comando (CMD) como administrador e execute o seguinte comando:

Dnscmd /Config /LocalNetPriorityNetMask 0x0000FFFF

Mudando a distribuição de carga (respostas) no DNS

Considere que você possuí os servidores de nomes A, B e C. Cadastrando três CNAMES iguais seusite.seu_dominio.com e apontando para cada um desses servidores o DNS fará um balanceamento de respostas (round robin), dividindo a carga igualmente entre A, B e C. Porém, é possível alterar essa proporção e fazer, por exemplo, que o servidor A receba o dobro das requisições dos outros…. então o servidor receberá 50% das requisições totais enquanto os servidores B e C fiquem com 25% das requisições cada. Para configurar isso, no servidor DNS abra o PowerShell como administrador e execute o seguinte comando:

Para criarmos escopos de zonas (locais), execute os seguintes comandos:

Add-DnsServerZoneScope -ZoneName "seu_dominio.com" -Name "AltoDesempenho"
Add-DnsServerZoneScope -ZoneName "seu_dominio.com" -Name "MedioDesempenho1"
Add-DnsServerZoneScope -ZoneName "seu_dominio.com" -Name "MedioDesempenho2"

Ainda no PowerShell vamos agora criar os registros do site em cada escopo, com os seguintes comandos:

Add-DnsServerResourceRecord -ZoneName "seu_dominio.com" -A -Name "seusite" -IPv4Address "192.0.0.1" -ZoneScope "AltoDesempenho"
Add-DnsServerResourceRecord -ZoneName "seu_dominio.com" -A -Name "seusite" -IPv4Address "182.0.0.1" -ZoneScope "MedioDesempenho1"
Add-DnsServerResourceRecord -ZoneName "seu_dominio.com" -A -Name "seusite" -IPv4Address "192.0.0.1" -ZoneScope "MedioDesempenho2"

Por fim, vamos executar criar a divisão de cargas, com o comando:

Add-DnsServerQueryResolutionPolicy -Name"Politica_de_cargas" -Action ALLOW -ZoneScope "AltoDesempenho,2;MedioDesempenho1,1;MedioDesempenho2,1" -ZoneName "seu_dominio.com"

Fontes/Referências

https://docs.microsoft.com/pt-br/troubleshoot/windows-server/networking/how-to-use-netmask-ordering-round-robin-feature
https://docs.microsoft.com/pt-br/windows-server/networking/dns/deploy/app-lb

Mais Informações

Esperamos ter ajudado da melhor forma possível e estaremos sempre a disposição para mais informações.

Entre em contato conosco pelo e-mail equipe@nvlan.com.br.

NVLAN - Consultoria