- Условное разрешение DNS имен в Windows Server: DNS Conditional Forwarding, политики DNS
- Настройка DNS Conditional Forwarder в Windows Server
- Настройка DNS Conditional Forwarding с помощью PowerShell
- Фильтрация запросов DNS, политики разрешения имен в Windows Server 2016
- Troubleshoot DNS name resolution on the Internet in Windows Server
- Summary
- To update root hints by using the DNS snap-in
- On a non-domain controller
- On a domain controller
- Предотвращаем утечку DNS при использовании VPN в Windows 10 и 8.1
- Windows 8 и 8.1
- Windows 8 и Windows 10 (редактор локальной групповой политики)
Условное разрешение DNS имен в Windows Server: DNS Conditional Forwarding, политики DNS
В этой статье мы рассмотрим два способа организации условного разрешения имен в DNS сервере на Windows Server 2016: DNS conditional forwarding и DNS policy. Эти технологии позволяют настроить условное разрешение DNS имен в зависимости от запрошенного имени, IP адреса и местоположения клиента, времени суток и т.д.
Условная пересылка DNS (Conditional Forwarding) позволяет перенаправить DNS запросы об определенном домене на определенные DNS-сервера. Обычно Conditional Forwarders используется, когда нужно настроить быстрое разрешение имен между несколькими внутренними приватными доменами, или вы не хотите, чтобы DNS запросы с вашего сервера пересылались через публичную сеть Интернет. В этом случае вы можете создать на DNS сервере правило DNS пересылки DNS запросов для определенной доменной зоны (только . ) на определенный DNS сервер.
Настройка DNS Conditional Forwarder в Windows Server
Попробуем настроить условное перенаправление DNS запросов для определенной доменной зоны на Windows Server 2016. Например, я хочу, чтобы все DNS запросы к зоне corp.winitpro.ru пересылались на DNS сервер 10.1.10.11.
- Запустите консоль управления DNS ( dnsmgmt.msc );
- Разверните ваш DNS сервер, щелкните правой кнопкой по разделу Conditional Forwarders и выберите New Conditional Forwarder;
- В поле DNS domain укажите FQDN имя домена, для которого нужно включить условную пересылку;
- В поле IP addresses of the master servers укажите IP адрес DNS сервера, на который нужно пересылать все запросы для указанного пространства имен;
- Если вы хотите хранить правило условной переадресации не только на этом DNS сервере, вы можете интегрировать его в AD. Выберите опцию “Store this conditional forwarder in Active Directory”;
- Выберите правило репликации записи conditional forwarding (All DNS servers in this forest, All DNS servers in this domain или All domain controllers in this domain).
Настройка DNS Conditional Forwarding с помощью PowerShell
Вы можете создать правило Conditional Forward для определенной DNS зоны с помощью PowerShell. Воспользуйтесь командлетом Add-DnsServerConditionalForwarderZone:
Add-DnsServerConditionalForwarderZone -Name dmz.winitpro.ru -MasterServers 192.168.1.11,192.168.101.11 -ReplicationScope Forest
Чтобы вывести список DNS Conditional Forwarders на определенном сервере, выполните следующий PowerShell скрипт:
$DNSServer = «DC01»
$Zones = Get-WMIObject -Computer $DNSServer -Namespace «root\MicrosoftDNS» -Class «MicrosoftDNS_Zone»
$Zones | Select-Object Name,MasterServers,DsIntegrated,ZoneType | where <$_.ZoneType -eq "4">| ft -AutoSize
Фильтрация запросов DNS, политики разрешения имен в Windows Server 2016
В Windows Server 2016 появилась новая фича в службе DNS сервера – DNS политики. DNS политики позволяют настроить DNS сервер так, чтобы он возвращал различные ответы на DNS запросы в зависимости от местоположения клиента (с какого IP адреса или подсети пришел запрос), интерфейса DNS сервера, времени суток, типа запрошенной записи (A, CNAME, PTR, MX) и т.д. DNS политики в Windows Server 2016 позволяют реализовать сценарии балансировки нагрузки, фильтрации DNS трафика, возврата DNS записей в зависимости от геолокации (IP адреса клиента) и многие другие сложные сценарии.
Вы можете создать политику как на уровне DNS сервера, так и на уровне всей зоны. Настройка DNS политик в Windows Server 2016 возможна только из командной строки PowerShell.
Попробуем создать простую политику, которая позволяет вернуть разный ответ на DNS запрос в зависимости от геолокации клиента. Допустим, вы хотите, чтобы клиенты в каждом офисе использовали собственный прокси на площадке. Вы создали политику назначения прокси в домене (на всех клиентах будет указано proxy.winitpro.ru). Но клиент из каждого офиса должен резолвить этот адрес по-разному, чтобы использовать для доступа свой локальный прокси-сервер.
Я создал 3 подсети для разных офисов компании:
Add-DnsServerClientSubnet -Name «MSK_DNS_Subnet» -IPv4Subnet «192.168.1.0/24»
Add-DnsServerClientSubnet -Name «EKB_DNS_Subnet» -IPv4Subnet «192.168.11.0/24»
Add-DnsServerClientSubnet -Name «SPB_DNS_Subnet» -IPv4Subnet «192.168.21.0/24»
Чтобы вывести список всех IP подсетей клиентов, выполните:
Теперь нужно для каждого офиса создать отдельную DNS область:
Add-DnsServerZoneScope -ZoneName “winitpro.ru” -Name “MSKZoneScope”
Add-DnsServerZoneScope -ZoneName “winitpro.ru” -Name “EKBZoneScope”
Add-DnsServerZoneScope -ZoneName “winitpro.ru” -Name “SPBZoneScope”
Следующие команды добавят 3 DNS записи с одним именем, но указывающие на разные IP адреса в разных областях DNS:
Add-DnsServerResourceRecord -ZoneName “winitpro.ru” -A -Name “proxy” -IPv4Address “192.168.1.10” -ZoneScope “MSKZoneScope”
Add-DnsServerResourceRecord -ZoneName “winitpro.ru” -A -Name “proxy” -IPv4Address “192.168.11.10” -ZoneScope “EKBZoneScope”
Add-DnsServerResourceRecord -ZoneName “winitpro.ru” -A -Name “proxy” -IPv4Address “192.168.21.10” -ZoneScope “SPBZoneScope”
Get-DnsServerResourceRecord -ZoneName “winitpro.ru” -ZoneScope SPBZoneScope
Теперь нужно создать DNS политики, которые свяжут IP подсети, DNS области и A записи.
Add-DnsServerQueryResolutionPolicy -Name “MSKResolutionPolicy” -Action ALLOW -ClientSubnet “eq,MSK_DNS_Subnet” -ZoneScope “MSKZoneScope,1” -ZoneName “winitpro.ru” –PassThru
Add-DnsServerQueryResolutionPolicy -Name “EKBResolutionPolicy” -Action ALLOW -ClientSubnet “eq,EKB_DNS_Subnet” -ZoneScope “EKBZoneScope,1” -ZoneName “winitpro.ru” -PassThru
Add-DnsServerQueryResolutionPolicy -Name “SPBResolutionPolicy” -Action ALLOW -ClientSubnet “eq,SPB_DNS_Subnet” -ZoneScope “SPBZoneScope,1” -ZoneName “winitpro.ru” –PassThru
- -Action ALLOW
- -Action DENY
- -Action IGNORE
Можно использовать следующие параметры в фильтре DNS:
-InternetProtocol «EQ,IPv4,NE,IPv6»
-TransportProtocol «EQ,UDP,TCP»
-ServerInterfaceIP «EQ,192.168.1.21»
-QType «EQ,A,AAAA,NE,PTR»
-TimeOfDay «EQ,9:00-18:00»
Вывести список всех DNS политик для DNS зоны на сервере можно так:
Get-DnsServerQueryResolutionPolicy -ZoneName winitpro.ru
Теперь с устройств из различных офисов проверьте, что DNS сервер на один и тот же запрос возвращает различные IP адреса прокси:
Можно запретить DNS серверу возвращать DNS адреса для определенного пространства имен (домена):
Troubleshoot DNS name resolution on the Internet in Windows Server
This article provides methods to troubleshoot Domain Name System (DNS) name resolution on the Internet in Microsoft Windows Server.
Original product version: В Windows Server 2012 R2
Original KB number: В 816567
Summary
This article describes methods that you can use to configure DNS if queries that are directed to the Internet are not resolved correctly, but local intranet name resolution functions correctly.
The Cache.dns file that stores root hints on your Windows Server computer may be missing or damaged. You can manually add root hints by using the DNS snap-in, replace the Cache.dns file on your hard disk with the backup Cache.dns file or replace it with the original version of the Cache.dns file.
To update root hints by using the DNS snap-in
To update root hints:
On a non-domain controller
To manually add root hints on a Windows Server DNS server that is not configured as a domain controller:
- Click Start, point to Administrative Tools, and then click DNS.
- In the right pane, right-click ServerName, where ServerName is the name of the server, and then click Properties.
- Click the Root Hints tab, and then click Add.
- Specify the fully qualified domain name (FQDN) and the IP address of the root server that you want to add, and then click OK.
On a domain controller
To update root hints on a Windows Server DNS server that is configured as a domain controller:
- Click Start, point to Administrative Tools, and then click DNS.
- In the right pane, right-click ServerName, where ServerName is the name of the server, and then click Properties.
- Click the Root Hints tab.
- Do one of the following:
- Add a root server to the list. To do so, click Add, specify the FQDN and the IP address of the root server that you want to add, and then click OK.
- Copy the root hints from another DNS server. To do so, click Copy from Server, specify the IP address of the DNS server where you want to copy the root hints from, and then click OK.
- Click OK.
The following is a list root servers as specified by Network Solutions:
Предотвращаем утечку DNS при использовании VPN в Windows 10 и 8.1
Один из самых популярных способов защиты ваших персональных данных в сети заключается в использовании VPN-сервиса. Однако, иногда недостаточно просто установить службу и надеяться на лучшее. Данное руководство поможет вам убедиться, что VPN не раскрывает ваши DNS-запросы.
В поисковой системе Google можно найти много статей по отключению Smart Multi-Homed Name Resolution или улучшенное многоадресное разрешение имен, но что это за функция? Еще в Windows 8 Microsoft представила новую функцию, которая ускоряет DNS-запросы за счет использования всех доступных в системе сетевых адаптеров для возврата самого первого результата. Это означает, что даже если вы используете VPN-сервис для работы в Интернете, но в вашей системе установлено несколько сетевых адаптеров, DNS-запрос может быть передан вне вашего защищенного VPN соединения.
Приведенные ниже шаги позволяют отключить данную функцию в Windows 8.1 и Windows 10 в системах с несколькими сетевыми адаптерами, например, при использовании нескольких беспроводных подключений или беспроводного и проводного подключений.
Windows 8 и 8.1
Следующий твик реестра можно применить только в системах Windows 8 и 8.1, в Windows 10 он не работает.
Если вы не любите работать с реестром, то можете пропустить данный способ и отключить функцию с помощью редактора групповых политик.
Примечание: Некорректное изменение реестра может привести к серьезным проблемам. Рекомендуется создать резервную копию реестра Windows перед тем, как выполнить данные шаги. В меню редактора реестра выберите Файл > Экспорт для сохранения резервной копии.
- Откройте редактор реестра: нажмите клавишу Windows, затем введите regedit.exe и нажмите Enter. Появится запрос службы контроля учетных записей, подтвердите его.
- Перейдите по пути: HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\DNSClient .
- Если параметр DisableSmartNameResolution уже существует, убедитесь, что его значение равно 1.
- В противном случае щелкните правой кнопкой мыши по директории DNSClient и в меню выберите Создать > Параметр DWORD (32 бита).
- Назовите параметр DisableSmartNameResolution .
- Установите значение, равное 1. Вы сможете в любой момент снова включить функцию, просто установив значение, равное 0 или просто удалив параметр.
- Перейдите по пути: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters .
- Если параметр DisableParallelAandAAAA уже существует, убедитесь, что его значение равно 1.
- В противном случае щелкните правой кнопкой мыши по директории Parameters и в меню выберите Создать > Параметр DWORD (32 бита).
- Назовите параметр DisableParallelAandAAAA .
- Установите значение, равное 1. Вы сможете в любой момент снова включить функцию, просто установив значение, равное 0 или просто удалив параметр.
После этого можно закрыть редактор реестра и перезагрузить Windows, чтобы применить изменения.
Windows 8 и Windows 10 (редактор локальной групповой политики)
Следующий способ работает во всех версиях Windows 10, а также в Windows 8 и 8.1.
Обратите внимание, что редактор групповых политик доступен только в версиях Windows 10 Pro. Если вы используете Windows 10 Домашняя, то можете использовать бесплатное приложение с открытым исходным кодом Policy Plus для редактирования групповых политик и отключения функции Smart Multi-Homed Name Resolution.
- Откройте редактор локальной групповой политики: нажмите клавишу Windows, затем введите gpedit.msc и нажмите Enter.
- Перейдите по пути: Конфигурация компьютера > Административные шаблоны > Сеть > DNS-клиент > Отключить улучшенное многоадресное разрешение имен.
- Установите статус политики Включено для отключения данной функции в системе.
Перезагрузите Windows, чтобы применить изменения.
Данная метод ни в коем случае не является верным способом защиты вашей конфиденциальности в Интернете, многие другие факторы также играют важную роль. Если у вас есть собственный лайфхак, который вы используете, чтобы поддерживать безопасность в сети, поделитесь им ниже в обсуждениях. Давайте сделаем серфинг снова безопасным вместе!