Управление трафиком на основе географического расположения на основных и вспомогательных серверах с помощью политики DNS

Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016

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

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

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

Примечание.

Дополнительные сведения о AXFR см. в запросе IETF для комментариев 5936. Дополнительные сведения о IXFR см. в запросе IETF для комментариев 1995.

Пример управления трафиком на основе первичного вторичного геолокации

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

В этом примере используются две вымышленные компании — Contoso Облачные службы, которая предоставляет решения для размещения веб-сайтов и доменов; и Woodgrove Food Services, которые предоставляют услуги доставки продуктов питания в нескольких городах по всему миру, а также веб-сайт с именем woodgrove.com.

Чтобы гарантировать, что woodgrove.com клиенты получают адаптивный интерфейс с своего веб-сайта, Woodgrove хочет, чтобы европейские клиенты направлялись в европейский центр обработки данных и американские клиенты, направленные в центр обработки данных США. Клиенты, расположенные в другом месте мира, могут направляться в любой из центров обработки данных.

Contoso Облачные службы имеет два центра обработки данных, один в США и другой в Европе, на котором Компания Contoso размещает свой портал заказа продуктов питания для woodgrove.com.

Развертывание DNS Contoso включает два дополнительных сервера: SecondaryServer1 с IP-адресом 10.0.0.2; и SecondaryServer2 с IP-адресом 10.0.0.3. Эти вторичные серверы работают в качестве серверов имен в двух разных регионах, с дополнительным серверомServer1, расположенным в Европе и SecondaryServer2, расположенных в США.

На primaryServer (IP-адрес 10.0.0.1) есть копия основной записываемой зоны, в которой вносятся изменения зоны. При передаче регулярной зоны на вторичные серверы вторичные серверы всегда обновляются с новыми изменениями зоны на первичном сервере.

На следующем рисунке показан этот сценарий.

Primary-Secondary Geo-Location Based Traffic Management Example

Как работает система первичного-вторичного DNS

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

Передача зоны в основном-вторичном развертывании DNS

Вы можете создать первичное вторичное развертывание DNS и синхронизировать зоны со следующими шагами.

  1. При установке DNS основная зона создается на основном DNS-сервере.
  2. На сервере-получателе создайте зоны и укажите первичные серверы.
  3. На первичных серверах можно добавить вторичные серверы в качестве доверенных вторичных файлов в основной зоне.
  4. Вторичные зоны делают полный запрос на передачу зоны (AXFR) и получают копию зоны.
  5. При необходимости первичные серверы отправляют уведомления на вторичные серверы об обновлениях зоны.
  6. Вторичные серверы делают добавочный запрос на передачу зоны (IXFR). Из-за этого вторичные серверы остаются синхронизированными с основным сервером.

Передача уровня зоны область в первичном развертывании DNS-вторичного развертывания

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

После настройки инфраструктуры DNS с основными и вторичными серверами передача уровня зоны область выполняется автоматически DNS с помощью следующих процессов.

Чтобы обеспечить передачу уровня зоны область, DNS-серверы используют механизмы расширения для DNS (EDNS0) OPT RR. Все запросы передачи зоны (AXFR или IXFR) из зон с область возникают с EDNS0 OPT RR, идентификатор параметра которого по умолчанию имеет значение "65433". Дополнительные сведения о EDNSO см. в запросе IETF для комментариев 6891.

Значение opt RR — это имя зоны область, для которой отправляется запрос. Когда основной DNS-сервер получает этот пакет от доверенного вторичного сервера, он интерпретирует запрос как поступающий для этой зоны область.

Если сервер-источник имеет такую зону, область он отвечает данными передачи (XFR) из этого область. Ответ содержит opt RR с тем же идентификатором параметра "65433" и значением, заданным для одной зоны область. Серверы-получатели получают этот ответ, извлекают область информацию из ответа и обновляют эту конкретную область зоны.

После этого основной сервер хранит список доверенных вторичных файлов, которые отправили такие зоны область запрос на уведомления.

Для дальнейшего обновления в зоне область уведомление IXFR отправляется на вторичные серверы с тем же оповещением OPT RR. Зона область получения этого уведомления делает запрос IXFR, содержащий RR и тот же процесс, что описано выше.

Настройка политики DNS для управления трафиком на основе первичного вторичного геолокации

Прежде чем начать, убедитесь, что вы выполнили все действия, описанные в разделе " Использование политики DNS для управления трафиком на основе географического расположения с основными серверами, а основной DNS-сервер настроен с зонами, зонами область, подсетями DNS-клиента и политикой DNS.

Примечание.

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

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

В следующих разделах приведены подробные инструкции по настройке.

Внимание

В следующих разделах приведены примеры команд Windows PowerShell, которые содержат примеры значений для многих параметров. Перед выполнением этих команд замените примеры значений в этих командах значениями, подходящими для развертывания.

Для выполнения следующих процедур требуется членство в Dns Администратор или эквивалентных.

Создание вторичных зон

Вы можете создать вторичную копию зоны, которую вы хотите реплика te в SecondaryServer1 и SecondaryServer2 (если командлеты выполняются удаленно из одного клиента управления).

Например, можно создать вторичную копию www.woodgrove.com в SecondaryServer1 и SecondarySesrver2.

Для создания вторичных зон можно использовать следующие команды Windows PowerShell.

Add-DnsServerSecondaryZone -Name "woodgrove.com" -ZoneFile "woodgrove.com.dns" -MasterServers 10.0.0.1 -ComputerName SecondaryServer1
Add-DnsServerSecondaryZone -Name "woodgrove.com" -ZoneFile "woodgrove.com.dns" -MasterServers 10.0.0.1 -ComputerName SecondaryServer2

Дополнительные сведения см. в разделе Add-DnsServerSecondaryZone.

Настройка Параметры передачи зоны в основной зоне

Необходимо настроить параметры основной зоны таким образом:

  1. Разрешены передачи зоны с основного сервера на указанные вторичные серверы.
  2. Уведомления об обновлении зоны отправляются первичным сервером на вторичные серверы.

Для настройки параметров передачи зоны в основной зоне можно использовать следующие команды Windows PowerShell.

Примечание.

В следующем примере команды параметр -Notify указывает, что основной сервер отправит уведомления об обновлениях списка получателей.

Set-DnsServerPrimaryZone -Name "woodgrove.com" -Notify Notify -SecondaryServers "10.0.0.2,10.0.0.3" -SecureSecondaries TransferToSecureServers -ComputerName PrimaryServer

Дополнительные сведения см. в разделе Set-DnsServerPrimaryZone.

Копирование подсетей DNS-клиента

Необходимо скопировать подсети DNS-клиента с первичного сервера на вторичные серверы.

Для копирования подсетей на вторичные серверы можно использовать следующие команды Windows PowerShell.

Get-DnsServerClientSubnet -ComputerName PrimaryServer | Add-DnsServerClientSubnet -ComputerName SecondaryServer1
Get-DnsServerClientSubnet -ComputerName PrimaryServer | Add-DnsServerClientSubnet -ComputerName SecondaryServer2

Дополнительные сведения см. в разделе Add-DnsServerClientSubnet.

Создание областей зоны на сервере-получателе

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

Для создания область зоны на дополнительных серверах можно использовать следующие команды Windows PowerShell.

Get-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName PrimaryServer|Add-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName SecondaryServer1 -ErrorAction Ignore
Get-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName PrimaryServer|Add-DnsServerZoneScope -ZoneName "woodgrove.com" -ComputerName SecondaryServer2 -ErrorAction Ignore

Примечание.

В этих примерах команд включен параметр -ErrorAction Ignore, так как область зоны по умолчанию существуют в каждой зоне. Не удается создать или удалить зону по умолчанию область. Конвейерная настройка приведет к попытке создать этот область, и это приведет к сбою. Кроме того, можно создать область зоны, отличной от по умолчанию, в двух дополнительных зонах.

Дополнительные сведения см. в разделе Add-DnsServerZoneScope.

Настройка политики DNS

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

Следующие команды Windows PowerShell можно использовать для создания политики DNS, которая связывает подсети DNS-клиента и область зоны.

$policy = Get-DnsServerQueryResolutionPolicy -ZoneName "woodgrove.com" -ComputerName PrimaryServer
$policy | Add-DnsServerQueryResolutionPolicy -ZoneName "woodgrove.com" -ComputerName SecondaryServer1
$policy | Add-DnsServerQueryResolutionPolicy -ZoneName "woodgrove.com" -ComputerName SecondaryServer2

Дополнительные сведения см. в разделе Add-DnsServerQueryResolutionPolicy.

Теперь вторичные DNS-серверы настроены с необходимыми политиками DNS для перенаправления трафика на основе географического расположения.

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

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