1

На общедоступном DNS-сервере я хотел бы создать правило с использованием политик DNS, чтобы разрешить трафик в конкретный домен только из указанных подсетей.

Например, скажем, у нас есть домен contoso.com , но мы хотим разрешить только определенную подсеть запрашивать это (обратите внимание, что на этом сервере есть другие публично запрашиваемые домены). Используя политики DNS, я могу легко заблокировать определенную подсеть от запроса определенного домена, но я не могу понять, как разрешить определенной подсети запрашивать определенный домен.

Следующее работает, чтобы заблокировать:

Add-DnsServerQueryResolutionPolicy -Name "Disallow_Contoso" -Action IGNORE -ClientSubnet "EQ,LocalSubnet10.x" –FQDN "EQ,*.contoso.com" -PassThru

Но следующее не позволяет:

Add-DnsServerQueryResolutionPolicy -Name "Allow_Contoso" -Action ALLOW -ClientSubnet "EQ,LocalSubnet10.x" –FQDN "EQ,*.contoso.com" -PassThru

Ошибка, возвращаемая из Powershell для второй команды:

Add-DnsServerQueryResolutionPolicy : Failed to create policy Allow_Contoso on DNS server DNS1. Please see internal exception for details.
At line:1 char:1
+ Add-DnsServerQueryResolutionPolicy -Name "Allow_Contoso" -Action ALLOW  ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidArgument: (Allow_Contoso:root/Microsoft/...esolutionPolicy) [Add-DnsServerQueryResolutionPolicy], CimException
+ FullyQualifiedErrorId : WIN32 87,Add-DnsServerQueryResolutionPolicy

Кажется, что -Action ALLOW не разрешен в этом контексте, но я не могу подтвердить это на основе загадочного сообщения об ошибке.

1 ответ1

0

После долгих проб и ошибок работает следующее:

Add-DnsServerClientSubnet -Name "Subnet192.x" -IPv4Subnet 192.168.0.0/24
Add-DnsServerZoneScope -ZoneName "contoso.com" -Name "SpecialSubnet" -PassThru
Add-DnsServerResourceRecord -ZoneName "contoso.com" -A -Name "test" -IPv4Address "10.10.0.1" -ZoneScope "SpecialSubnet" -PassThru
Add-DnsServerQueryResolutionPolicy -Name "SpecialPolicy" -Action ALLOW -ClientSubnet "eq,Subnet192.x" -ZoneScope "SpecialSubnet,1" -ZoneName "contoso.com" -PassThru

Поэтому, если запрашивающее устройство находится за пределами подсети 192.168.0.0/24, собственная зона DNS ответит записью "A" для test.contoso.com (при условии, что оно было создано вручную). Если запрашивающее устройство находится в подсети 192.168.0.0/24, созданная здесь политика ответит 10.10.0.1 на запрос test.contoso.com .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .