Використовуйте політику DNS для управління трафіком на основі геолокації з основними серверами

Застосовується до: Windows Server (піврічний канал), Windows Server 2016

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

Цей сценарій ілюструє, як розгорнути політику DNS для управління трафіком на основі геолокації, коли ви використовуєте лише первинні DNS-сервери. Ви також можете здійснити управління трафіком на основі геолокації, якщо у вас є як основний, так і вторинний DNS-сервери. Якщо у вас розгортання первинної та вторинної вершин, спочатку виконайте кроки в цій темі, а потім виконайте кроки, наведені в розділі Використання політики DNS для управління трафіком на основі геолокації з первинно-вторинними розгортання.

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

Ви можете використовувати наступні параметри політики DNS для управління відповідями DNS-сервера на запити клієнтів DNS.

  • Клієнтська підмережа. Ім'я попередньо визначеної підмережі клієнта. Використовується для перевірки підмережі, з якої було надіслано запит.
  • Транспортний протокол. Транспортний протокол, що використовується у запиті. Можливі записи UDP і TCP.
  • Інтернет-протокол. Мережевий протокол, що використовується у запиті. Можливі записи IPv4 і IPv6.
  • ІР-адреса інтерфейсу сервера. IP-адреса мережевого інтерфейсу DNS-сервера, який отримав запит DNS.
  • FQDN. Повністю кваліфіковане доменне ім'я (FQDN) запису в запиті, з можливістю використання підстановочного символу.
  • Тип запиту. Тип запиту, який запитується (A, SRV, TXT тощо).
  • Час дня. Час доби, коли отримано запит.

Ви можете поєднати наступні критерії з логічним оператором (І/АБО) для формулювання виразів політики. Коли ці вирази збігаються, передбачається, що політики виконують одну з наступних дій.

  • Ігнорувати. DNS-сервер мовчки скидає запит.
  • Заперечувати. DNS-сервер відповідає на цей запит відповіддю на помилку.
  • Дозвольте. DNS-сервер відповідає у відповідь керованою трафіком реакцією.

Приклад управління дорожнім рухом на основі геолокації

Нижче наведено приклад того, як ви можете використовувати політику DNS для перенаправлення трафіку на основі фізичного розташування клієнта, який виконує запит DNS.

У цьому прикладі використовуються дві вигадані компанії - Contoso Cloud Services, яка надає рішення для веб- та доменного хостингу; та Woodgrove Food Services, яка надає послуги з доставки їжі в різних містах по всьому світу і яка має веб-сайт під назвою woodgrove.com.

У хмарних сервісах Contoso є два центри обробки даних, один у США та інший у Європі. Європейський центр обробки даних розміщує портал замовлення їжі для woodgrove.com.

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

Наступна ілюстрація зображує цей сценарій.

керування

Як працює процес розпізнавання імен DNS

Під час процесу вирішення імені користувач намагається підключитися до www.woodgrove.com. Це призводить до запиту дозволу імені DNS, який надсилається на DNS-сервер, який налаштовано у властивостях Мережевого підключення на комп'ютері користувача. Як правило, це DNS-сервер, наданий локальним провайдером, який діє як вирішувач кешування, і називається LDNS.

Якщо ім'я DNS відсутнє в локальному кеші LDNS, LDNS-сервер перенаправляє запит на DNS-сервер, який є повноважним для woodgrove.com. Авторитетний DNS-сервер відповідає запитаним записом (www.woodgrove.com) на LDNS-сервер, який, у свою чергу, кешує запис локально перед тим, як відправити його на комп'ютер користувача.

Оскільки хмарні служби Contoso використовують політики DNS-сервера, авторитетний DNS-сервер, на якому розміщено contoso.com, налаштовано на повернення відповідей, керованих трафіком на основі геолокації. Це призводить до спрямування європейських клієнтів до європейського центру обробки даних та направлення американських клієнтів до центру обробки даних США, як показано на малюнку.

У цьому випадку авторитетний DNS-сервер зазвичай бачить запит щодо дозволу імен, що надходить від сервера LDNS і, дуже рідко, від комп'ютера користувача. Через це вихідною IP-адресою у запиті на роздільну здатність імен, як її бачить авторитетний сервер DNS, є адреса LDNS-сервера, а не комп'ютера користувача. Однак використання IP-адреси LDNS-сервера під час налаштування відповідей на запити на основі геолокації забезпечує достовірну оцінку геолокації користувача, оскільки користувач запитує DNS-сервер свого локального провайдера.

Політики DNS використовують IP-адресу відправника в пакеті UDP/TCP, що містить запит DNS. Якщо запит потрапляє на основний сервер через багаторазові перетворювачі/LDNS, політика враховуватиме лише IP останнього розподільника, з якого сервер DNS отримує запит.

Як налаштувати політику DNS для відповідей на запити на основі геолокації

Щоб налаштувати політику DNS для відповідей на запити на основі геолокації, потрібно виконати наступні кроки.

Ви повинні виконати ці дії на DNS-сервері, який відповідає зоні, яку потрібно налаштувати. Членство в DnsAdmins, або еквівалент, необхідний для виконання наступних процедур.

У наступних розділах наведено докладні інструкції з налаштування.

Наступні розділи містять приклади команд Windows PowerShell, які містять приклади значень для багатьох параметрів. Перш ніж запускати ці команди, переконайтесь, що ви замінили приклади значень у цих командах значеннями, які підходять для вашого розгортання.

Створіть підмережі клієнта DNS

Першим кроком є ​​визначення підмереж або простору IP-адрес регіонів, на які потрібно перенаправити трафік. Наприклад, якщо ви хочете перенаправити трафік для США та Європи, вам потрібно визначити підмережі або простори IP-адрес у цих регіонах.

Ви можете отримати цю інформацію на картах Geo-IP. На основі цих розподілів Geo-IP потрібно створити "Підмережі клієнта DNS". Клієнтська підмережа DNS - це логічне групування підмереж IPv4 або IPv6, з яких запити надсилаються на сервер DNS.

Ви можете використовувати такі команди Windows PowerShell для створення підмереж клієнта DNS.

Створити зони

Після налаштування клієнтських підмереж потрібно розділити зону, трафік якої ви хочете перенаправити, на дві різні області зони, по одній області для кожної із налаштованих вами підмереж клієнтського DNS.

Наприклад, якщо ви хочете перенаправити трафік для імені DNS www.woodgrove.com, ви повинні створити два різних зони зони в зоні woodgrove.com, один для США та інший для Європи.

Область дії зони - це унікальний екземпляр зони. Зона DNS може мати кілька областей зони, причому кожна зона зони містить власний набір записів DNS. Один і той же запис може бути присутній у декількох областях, з різними IP-адресами або однаковими IP-адресами.

За замовчуванням область зон існує в зонах DNS. Ця область зони має ту саму назву, що і зона та застарілі операції DNS, що працюють над цією сферою.

Ви можете використовувати наступні команди Windows PowerShell для створення областей зони.

Додайте записи до зони

Тепер ви повинні додати записи, що представляють хост веб-сервера, у два зони дії.

Наприклад, USZoneScope і EuropeZoneScope. У USZoneScope ви можете додати запис www.woodgrove.com з IP-адресою 192.0.0.1, який знаходиться в американському центрі обробки даних; а в EuropeZoneScope ви можете додати той самий запис (www.woodgrove.com) з IP-адресою 141.1.0.1 в європейському центрі обробки даних.

Ви можете використовувати наступні команди Windows PowerShell для додавання записів до областей зони.

У цьому прикладі ви також повинні використовувати наступні команди Windows PowerShell для додавання записів у область зони за замовчуванням, щоб увесь світ все ще мав доступ до веб-сервера woodgrove.com з будь-якого з двох центрів обробки даних.

ZoneScope параметр не включається, коли ви додаєте запис у область за замовчуванням. Це те саме, що додавати записи до стандартної зони DNS.

Створіть політику

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

Ви можете використовувати наступні команди Windows PowerShell для створення політики DNS, яка пов'язує підмережі клієнта DNS та області зон.

Тепер сервер DNS налаштований на необхідні політики DNS для перенаправлення трафіку на основі геолокації.

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

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