Как настроит серверы пересылки

Условное разрешение 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.

  1. Запустите консоль управления DNS ( dnsmgmt.msc );
  2. Разверните ваш DNS сервер, щелкните правой кнопкой по разделу Conditional Forwarders и выберите New Conditional Forwarder;
  3. В поле DNS domain укажите FQDN имя домена, для которого нужно включить условную пересылку;
  4. В поле IP addresses of the master servers укажите IP адрес DNS сервера, на который нужно пересылать все запросы для указанного пространства имен;
  5. Если вы хотите хранить правило условной переадресации не только на этом DNS сервере, вы можете интегрировать его в AD. Выберите опцию “Store this conditional forwarder in Active Directory”;
  6. Выберите правило репликации записи 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 адреса для определенного пространства имен (домена):

Источник

Использование серверов пересылки

Чтобы использовать серверы пересылки для управления трафиком DNS между сетью и Интернетом, настройте брандмауэр сети для разрешения связи с Интернетом только одному DNS-серверу. При настройке других DNS-серверов в сети на пересылку запросов, которые не могут быть разрешены локально, на этот DNS-сервер, последний выступает как сервер пересылки. Дополнительные сведения об использовании серверов пересылки см. в разделе Общее представление о серверах пересылки.

Читайте также:  Как отремонтировать лакированную столешницу

Последовательность пересылки

Порядок IP-адресов, которые указаны в качестве серверов пересылки на DNS-сервере, определяет последовательность использования этих IP-адресов. После того, как DNS-сервер перешлет запрос на сервер пересылки, имеющий первый IP-адрес из списка, он некоторое время ожидает ответ от этого сервера пересылки (в соответствии с параметром времени ожидания пересылки на DNS-сервере) перед повтором этой операции пересылки на следующий по списку IP-адрес. Этот процесс повторяется, пока не будет получен утвердительный ответ от сервера пересылки.

Например, на следующем рисунке DNS-серверы, имеющие первый и второй IP-адрес из списка, не отвечают на запрос DNS-сервера. DNS-сервер, имеющий третий IP-адрес из списка, отвечает, и запрос пересылается на этот DNS-сервер.

В отличие от стандартного разрешения, при котором время обмена пакетами «туда и обратно» связано с каждым сервером, IP-адреса в списке серверов пересылки не упорядочиваются в соответствии с этим временем. Чтобы изменить предпочтения, необходимо вручную изменить последовательность серверов.

Серверы условной пересылки

Серверы условной пересылки являются DNS-серверами, которые пересылают запросы в соответствии с именами доменов. Вместо пересылки DNS-сервером всех неразрешенных запросов на сервер пересылки, можно настроить DNS-серверы таким образом, чтобы они пересылали запросы на различные серверы пересылки в зависимости от определенных имен доменов, содержащихся в запросах. Пересылка в зависимости от имен доменов улучшает стандартную пересылку путем добавления к процессу пересылки условия, зависящего от имени.

Параметр сервера условной пересылки для DNS-сервера состоит из следующих компонентов:

    Имена доменов, для которых DNS-сервер будет пересылать запросы

Один или несколько IP-адресов DNS-серверов для каждого указанного имени домена

Когда DNS-клиент или сервер выполняет операцию запроса DNS-сервера, этот сервер определяет, может ли он разрешить запрос, используя собственные данные зоны или данные, хранящиеся в кэше. Если DNS-сервер настроен на пересылку имени домена, указанного в запросе, запрос пересылается на IP-адрес сервера пересылки, который связан с этим именем домена. Например, на следующем рисунке каждый запрос имен доменов пересылается на DNS-сервер, связанный с именем домена.

Если DNS-сервер не имеет сервера пересылки для имени, указанного в запросе, он пытается разрешить запрос с помощью стандартной рекурсии. Дополнительные сведения см. в разделе Настройка DNS-сервера для использования серверов пересылки.

Можно использовать серверы условной пересылки для улучшения разрешения имен между внутренними (частными) пространствами имен DNS, которые не являются частью пространства имен DNS Интернета. Такие пространства имен DNS могут быть результатом слияния компаний. При настройке DNS-серверов в одном внутреннем пространстве имен для пересылки всех запросов на полномочные DNS-серверы во втором внутреннем пространстве имен, серверы условной пересылки включают разрешение имен между двумя пространствами имен без выполнения рекурсии с использованием пространства имен DNS Интернета. Это улучшение процесса разрешения имен также позволяет избегать выполнения рекурсии DNS-серверами на внутренние корневые серверы для других пространств имен в одной сети.

Читайте также:  Keenetic extra как настроить режим ретранслятора

DNS-сервер не может пересылать запросы имен домена, находящихся в содержащейся на нем зоне. Например, полномочный DNS-сервер для зоны widgets.tailspintoys.com не может пересылать запросы, содержащие имя домена widgets.tailspintoys.com. DNS-сервер, который является полномочным для widgets.tailspintoys.com, может пересылать запросы DNS-имен, которые заканчиваются на hr.widgets.tailspintoys.com, если DNS-имя hr.widgets.tailspintoys.com было делегировано другому DNS-серверу.

Длина имени домена сервера условной пересылки

Когда DNS-сервер, настроенный как сервер условной пересылки, получает запрос на имя домена, он сравнивает имя домена со списком условий имен доменов и использует самое длинное условие имени домена, которое соответствует имени домена в запросе. Например, на рисунке DNS-сервер придерживается следующей логики условной пересылки для определения, как следует переслать запрос имени домена:

Источник

Общее представление о серверах пересылки

Сервер пересылки — это DNS-сервер в сети, который пересылает DNS-запросы внешних DNS-имен на DNS-серверы за пределами этой сети. Запросы также можно пересылать в соответствии с определенными именами домена, используя условную пересылку.

DNS-сервер можно назначить как сервер пересылки путем настройки других DNS-серверов в сети на переадресацию запросов, которые не могут быть разрешены локально, на этот DNS-сервер. С помощью сервера пересылки можно управлять разрешением имен для имен, находящихся за пределами организации, например в Интернете, и увеличивать эффективность разрешения имен для компьютеров в сети. Дополнительные сведения об использовании серверов пересылки и условной пересылки см. в разделе Использование серверов пересылки.

На следующем рисунке показано, как отправляются запросы внешних имен с помощью серверов пересылки.

При назначении DNS-сервера в качестве сервера пересылки он становится ответственным за обработку внешнего трафика, что ограничивает его доступность из Интернета. Сервер пересылки создает большой кэш, где хранятся сведения о внешних DNS, так как все внешние DNS-запросы в сети разрешаются через него. За небольшой промежуток времени сервер пересылки может разрешить большое количество внешних DNS-запросов, используя данные в собственном кэше. Это уменьшает интернет-трафик в сети и время ожидания ответа DNS-клиентами.

Поведение DNS-сервера, настроенного на использование сервера пересылки, отличается от поведения DNS-сервера, не использующего сервер пересылки. Поведение DNS-сервера, использующего сервер пересылки, заключается в следующем:

    Если DNS-сервер получает запрос, он пытается разрешить этот запрос, используя имеющиеся зоны и собственный кэш.

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

Если серверы пересылки недоступны, DNS-сервер пытается использовать корневые ссылки для разрешения запроса.

Запрос, пересылаемый DNS-сервером на сервер пересылки, является рекурсивным запросом. Он отличается от итеративного запроса, посылаемого DNS-сервером на другой DNS-сервер во время стандартного разрешения имен (то есть разрешения, при котором не задействован сервер пересылки).

Источник

Оцените статью
Важно!