Я использую политику DNS с DNS-сервером Windows. В моем сценарии я хочу разрешить рекурсивные запросы в локальной подсети (192.168.1.0/24) и запретить другим.
Он отлично работает до тех пор, пока не запрашивает домен (example.com) из локальной подсети. После разрешения из локальной сети он начинает разрешаться для всех IP-адресов. Я думаю, что сначала он просматривает кеш и сразу же отвечает, не просматривая политики .
Как я могу отклонить рекурсивные запросы в кеше для внешних IP-адресов?
Вот сведения о моей политике.
Add-DnsServerClientSubnet -Name ServersSubnet -IPv4Subnet 192.168.1.0/24
Add-DnsServerClientSubnet -Name LoopBackSubnet -IPv4Subnet 127.0.0.0/8 -IPv6Subnet ::1/128
Set-DnsServerRecursionScope -Name . -EnableRecursion $False
Add-DnsServerRecursionScope -Name "InternalClients" -EnableRecursion $True -Forwarder 208.26.222.222, 208.67.220.220
Add-DnsServerQueryResolutionPolicy -Name "SplitBrainRecursionPolicy" -Action ALLOW -ApplyOnRecursion -RecursionScope "InternalClients" -ClientSubnet "eq,ServersSubnet,LoopBackSubnet"
Вопрос в том, хотите ли вы заблокировать разрешение example.com для внешних клиентов? Политики рекурсии контролируют, будет ли DNS-сервер рекурсивным для внешних клиентов или нет. С политиками, которые вы создали выше, он не будет повторяться. Но он все равно будет продолжать отвечать из кеша. Если вы хотите заблокировать разрешение имен для внешних клиентов, сделайте это Add-DnsServerQueryResolutionPolicy -Name "SplitBrainDenyPolicy" -Action DENY- -ClientSubnet "ne, ServersSubnet, LoopBackSubnet"
Обратите внимание, что я использую здесь "ne". Вы также можете использовать критерий -ServerInterface, чтобы различать внутренних и внешних клиентов.
Ashu [Я разработал политики DNS]
~