Dominando Encaminhadores DNS e Encaminhadores Condicionais no AD

Encaminhadores de DNS do Windows e encaminhadores condicionais de DNS são uma parte importante da sua infraestrutura de DNS. Neste tutorial, vamos abordar os encaminhadores de DNS do AD e como você pode gerenciá-los em seu ambiente.

Você vai perceber que ocasionalmente precisa adicionar ou gerenciar esses endereços de encaminhador. Algumas dessas mudanças precisam ser feitas em vários servidores DNS em sua empresa. Felizmente, o uso de comandos como o cmdlet Set-DnsServerForwarder do PowerShell e outros permite que você gerencie facilmente esses dois serviços de DNS com facilidade.

Este post de blog tem um vídeo complementar criado por contribuinte do TechSnips, David Lamb. Sinta-se à vontade para assistir ou, se preferir texto, continue lendo!

Substituindo Encaminhadores de DNS

Os encaminhadores de DNS são usados por um servidor DNS para buscar consultas de endereços que não estão contidos em nenhuma zona para a qual o servidor é autoritário. Isso fornece aos seus servidores DNS um meio eficiente de resolver nomes. Sem os encaminhadores em vigor, seu servidor DNS teria que consultar os servidores de dicas raiz para começar a resolver endereços desconhecidos.

Embora esses endereços de encaminhador sejam configurados separadamente em cada servidor DNS, usar o PowerShell facilita muito o gerenciamento deles, permitindo que usemos o cmdlet Set-DnsServerForwarder.

Comece visualizando os encaminhadores configurados atualmente para o servidor DNS local. Faremos isso usando o cmdlet Get-DnsServerForwarder. Primeiro estamos usando o cmdlet Get-* porque você precisa primeiro encontrar todos os encaminhadores existentes.

Como visto abaixo, existem dois encaminhadores configurados com os endereços IP 8.8.8.8 e 8.8.4.4.

PS> Get-DnsServerForwarder
Finding existing DNS server forwarders

Agora adicione um encaminhador adicional. Este encaminhador poderia ser possivelmente um novo servidor DNS que você configurou em nossa DMZ, ou talvez usando um endereço de encaminhamento fornecido pelo nosso provedor de serviços de internet. Neste caso, você usará o cmdlet Set-DnsServerForwarder para definir o novo endereço e então usará Get-DnsServerForwarder para confirmar se o endereço foi definido corretamente.

Set-DnsServerForwarder -IPAddress 192.168.1.1
Get-DnsServerForwarder
Confirming DNS server forwarder change

Infelizmente, isso não teve o resultado desejado. Como você pode ver acima, usando o cmdlet Set-DnsServerForwarder na verdade substitui a lista de encaminhadores em vez de adicionar a ela. Para adicionar o endereço à lista, em vez de substituir a lista inteira, você precisa usar Add-DnsServerForwarder.

Para corrigir isso, substitua a lista pelos dois encaminhadores originais, adicione o novo endereço e depois verifique se teve sucesso.

Set-DnsServerForwarder -IPAddress 8.8.8.8, 8.8.4.4
Add-DnsServerForwarder -IPAddress 192.168.1.1
Get-DnsServerForwarder
Confirming DNS server forwarder addition

Agora você tem os três encaminhadores adicionados.

Removendo Encaminhadores DNS

Vamos dizer que você queira remover um endereço de encaminhador, você usaria o cmdlet Remove-DnsServerForwarder como mostrado abaixo. Então, você verificaria se o endereço foi removido.

Se Set-DnsServerForwarder substitui o encaminhador DNS, Remove-DnsServerForwarder o remove completamente.

Remove-DnsServerForwarder -IPAddress 192.168.1.1
Get-DnsServerForwarder
Confirming DNS server forwarder removal

Dimensionando para Múltiplos Servidores DNS

Às vezes, você precisará ser capaz de adicionar ou remover um endereço de encaminhador em vários servidores DNS. Nesse caso, Set-DnsServerForwarder não funcionará. Felizmente, o PowerShell facilita a escalabilidade dessa tarefa para vários servidores DNS. Se você usar Invoke-Command, inclua uma lista de todos os nossos servidores DNS e, em seguida, coloque Add-DnsServerForwarder no valor do parâmetro scriptblock, você pode modificar todos os servidores DNS com um único comando. Em seguida, usando um comando semelhante, veja os resultados de nossas alterações.

Invoke-Command -ComputerName DC01, DC02, DC03 -ScriptBlock {
    Add-DnsServerForwarder -IPAddress 192.168.1.1
}
Invoke-Command -ComputerName DC01, DC02, DC03 -ScriptBlock { Get-DnsServerForwarder }
Adding DNS server forwarders on multiple DNS Servers

Encaminhadores Condicional DNS

A special type of forwarder, called a conditional forwarder, cannot be modified with the Set-DnsServerForwarder cmdlet. This type of forwarder can be used when you have been provided with the IP address(es) of the DNS server(s) for a known DNS domain name.

Os encaminhadores condicionais DNS são usados pelo servidor DNS antes de usar os encaminhadores de servidor listados anteriormente neste artigo.

Por exemplo, se você tiver um encaminhador condicional configurado para tailspintoys.com, seu servidor DNS, após verificar que não é um domínio pelo qual é autoritativo, verificará os encaminhadores condicionais e descobrirá que uma entrada existe. Neste ponto, seu servidor DNS consulta o servidor DNS listado para o endereço desejado no domínio tailspintoys.com.

Uma característica interessante dos encaminhadores condicionais DNS é que eles podem ser replicados para outros servidores DNS da mesma forma que qualquer Zona de DNS Integrada ao Active Directory pode ser.

Comece verificando se você possui um encaminhador condicional configurado usando o cmdlet Get-DnsServerZone.

PS> Get-DnsServerZone
Finding DNS server zones

Os forwarders condicionais aparecem nesta lista com um ZoneType de forwarder. Neste caso, não temos um configurado. Portanto, você usará Add-DnsServerConditionalForwarderZone para criar o forwarder condicional, configurá-lo para replicar para toda a floresta do Active Directory e, em seguida, confirmar que foi criado.

PS> Add-DnsServerConditionalForwarderZone `
    -Name tailspintoys.com `
    -MasterServers 10.10.14.240,10.10.14.241 `
    -ReplicationScope Forest

PS> Get-DnsServerZone
Verifying new DNS server conditional forwarder zone

A saída mostra que você tem o forwarder condicional configurado e está pronto para uso.

Resumo

O PowerShell realmente facilita a administração dos forwarders DNS. Agora você deverá ser capaz de usar o PowerShell para gerenciar e automatizar os forwarders DNS do AD de várias maneiras diferentes. Cobrimos esses forwarders em praticamente todos os aspectos.

Source:
https://adamtheautomator.com/dns-conditional-forwarder/