Настройка правил NAT для VPN-шлюза Виртуальной глобальной сети

VPN-шлюз виртуальной глобальной сети можно настроить с помощью статических правил NAT "один к одному". Правило NAT обеспечивает механизм для настройки преобразования IP-адресов "один к одному". NAT можно использовать для соединения двух IP-сетей с несовместимыми или перекрывающимися IP-адресами. Типичный сценарий — ветви с перекрывающимися IP-адресами, которым требуется доступ к ресурсам виртуальной сети Azure.

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

Схема, демонстрирующая архитектуру

Чтобы использовать NAT, VPN-устройства должны использовать селекторы трафика "любой к любому" (дикий карта). Селекторы трафика на основе политик (узкие) совместно с конфигурацией NAT не поддерживаются.

Настройка правил NAT

Правила NAT можно в любой момент настроить и просмотреть в параметрах VPN-шлюза.

Типы NAT: статическое и динамическое

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

  • Статическое NAT — это фиксированные правила, определяющие отношения сопоставления между адресами. Для каждого из указанных IP-адресов здесь всегда выполняется преобразование в один и тот же адрес из целевого пула. Сопоставления статических правил выполняются без отслеживания состояния, поскольку все они являются фиксированными. Например, правило NAT, созданное для сопоставления адресов 10.0.0.0/24 и 192.168.0.0/24, будет иметь фиксированное сопоставление "1 к 1". В этом случае 10.0.0.0 преобразуется в 192.168.0.0, 10.0.0.1 преобразуется в 192.168.0.1 и так далее.

  • Динамическое преобразование сетевых адресов (NAT) поддерживает преобразование одного IP-адреса в разные целевые IP-адреса с учетом текущей доступности или разные комбинации преобразования IP-адресов и портов TCP и UDP. Вариант с преобразованием портов называется NAPT. Динамические правила означают, что сопоставление должно выполняться с отслеживанием состояния и отслеживать все потоки трафика в каждый конкретный момент. Из-за характера динамических NAT и постоянно изменяющихся сочетаний IP-адресов и портов потоки, использующие правила динамического NAT, необходимо инициировать из диапазона IP-адресов внутреннего сопоставления (предварительная версия NAT). Динамическое сопоставление освобождается после отключения или корректного завершения потока.

Также важно учитывать размер пула адресов для преобразования. Если размер целевого пула адресов совпадает с размером исходного пула адресов, используйте статические правила NAT для сопоставления "один к одному" в порядке возрастания адресов. Если же целевой пул адресов меньше исходного, используйте динамические правила NAT для компенсации такой разницы.

Примечание.

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

Снимок экрана: изменение правил

  1. Перейдите к виртуальному концентратору.

  2. Выберите VPN (сеть — сеть).

  3. Выберите Правила NAT (изменить).

  4. На странице Изменение правила NAT можно Добавить, изменить или удалить правило NAT с помощью следующих значений.

    • Имя — уникальное имя для правила NAT.
    • Тип — статический или динамический. Статическое сопоставление NAT типа "один к одному" устанавливает связь "один к одному" между внутренним и внешним адресами, а динамическое сопоставление NAT выбирает IP-адреса и порты с учетом их доступности.
    • Идентификатор IP-конфигурации. Правило NAT должно быть привязано к конкретному экземпляру VPN-шлюза. Это применимо только к динамическому NAT. Статические правила NAT применяются к обоим экземплярам VPN-шлюза автоматически.
    • Режим: IngressSnat или EgressSnat.
      • Режим IngressSnat (также известный как источник входящего трафика NAT) применяется к трафику, поступающему на VPN-шлюз типа "сеть — сеть" в концентраторе Azure.
      • Режим EgressSnat (также известный как источник исходящего трафика NAT) применяется к трафику, покидающему VPN-шлюз типа "сеть — сеть" в концентраторе Azure.
    • Внутреннее сопоставление: диапазон префиксов исходных IP-адресов во внутренней сети, которые будут сопоставлены с набором внешних IP-адресов. Иными словами, диапазон префиксов адресов до NAT.
    • Внешнее сопоставление: диапазон префиксов целевых IP-адресов во внешней сети, с которыми будут сопоставляться исходные IP-адреса. Иными словами, диапазон префиксов адресов после NAT.
    • Подключение по каналу: ресурс подключения, который виртуально подключает VPN-сайт к VPN-шлюзу "сеть — сеть" концентратора виртуальной глобальной сети Azure.

Примечание.

Если вы хотите, чтобы VPN-шлюз типа "сеть — сеть" объявлял преобразованные (внешнее сопоставление) префиксы адресов по протоколу BGP, нажмите кнопку Enable BGP Translation (Включить преобразование BGP). Локальная среда будет автоматически узнавать диапазон правил исходящего трафика после NAT, а Azure (концентратор Виртуальной глобальной сети, подключенные виртуальные сети, VPN и ветви ExpressRoute) — диапазон правил входящего трафика после NAT. Новые диапазоны POST NAT будут отображаться в таблице "Действующие маршруты" в виртуальном концентраторе. Параметр Enable BGP Translation (Включить преобразование BGP) применяется ко всем правилам NAT в VPN-шлюзе типа "сеть — сеть" Виртуальной глобальной сети.

Примеры конфигураций

SNAT входящего трафика (VPN-сайт с поддержкой BGP)

Правила SNAT для входящего трафика применяются к пакетам, которые поступают в Azure через VPN-шлюз типа "сеть — сеть" Виртуальной глобальной сети. В этом сценарии необходимо подключить к Azure две ветви VPN типа "сеть — сеть". VPN-сайт 1 подключается по каналу A, а VPN-сайт 2 — по каналу B. У сайтов одно и то же адресное пространство 10.30.0.0/24.

В этом примере мы будем использовать сайт NAT1 до 172.30.0.0.0/24. Периферийные виртуальные сети и ветви Виртуальной глобальной сети будут автоматически узнавать этот диапазон адресов после NAT.

На следующей схеме показан проецируемый результат:

Схема: NAT в режиме входящего трафика для сайтов с поддержкой BGP

  1. Указание правила NAT

    Укажите правило NAT, чтобы VPN-шлюз типа "сеть — сеть" можно различать между двумя ветвями с перекрывающимися адресными пространствами (например, 10.30.0.0/24). В этом примере мы рассмотрим канал A для VPN-сайта 1.

    Следующее правило NAT можно настроить и связать с Link A. Так как это статическое правило NAT, адресные пространства внутреннего сопоставления и внешнего сопоставления содержат одинаковое количество IP-адресов.

    • Имя: ingressRule01
    • Тип: статическое
    • Режим: IngressSnat
    • Внутреннее сопоставление: 10.30.0.0/24
    • Внешнее сопоставление: 172.30.0.0/24
    • Подключение по каналу: канал A
  2. Переведите переключатель Преобразование маршрута BGP в положение "Включить".

    Снимок экрана: включение преобразования BGP

  3. Убедитесь, что VPN-шлюз типа "сеть — сеть" может выполнять пиринг с локальным пирингом BGP.

    В этом примере правило NAT для входящего трафика потребуется перевести 10.30.0.132 на 172.30.0.132. Для этого нажмите кнопку "Изменить VPN-сайт", чтобы настроить канал BGP ДЛЯ отображения этого преобразованного однорангового адреса BGP (172.30.0.132).

    Снимок экрана: изменение IP-адреса пиринга BGP

Рекомендации в случае подключения VPN-сайта по протоколу BGP

  • Для статического преобразования "один к одному" размер подсети как для внутреннего, так и для внешнего сопоставления должен совпадать.

  • Если включено преобразование BGP, VPN-шлюз типа "сеть — сеть" будет автоматически объявлять внешнее сопоставлениеправил NAT для исходящего трафика в локальной среде, а также внешнее сопоставлениеправил NAT для входящего трафика в Azure (концентратор виртуальной глобальной сети, подключенные периферийные виртуальные сети, подключенная сеть VPN или ExpressRoute). Если преобразование BGP отключено, преобразованные маршруты в локальной среде автоматически не объявляются. Поэтому локальный маршрутизатор BGP необходимо настроить таким образом, чтобы он объявлял диапазон после NAT (внешнее сопоставление) правил NAT для входящего трафика, связанных с этим подключением к VPN-сайту. Аналогичным образом на локальном устройстве следует применить маршрут к диапазону после NAT (внешнее сопоставление) правил NAT для исходящего трафика.

  • VPN-шлюз типа "сеть — сеть" автоматически преобразует локальный одноранговый IP-адрес BGP, если локальный одноранговый IP-адрес BGP содержится во внутреннем сопоставленииправила NAT для входящего трафика. В результате адрес BGP подключения по каналу VPN-сайта должен отражать адрес, преобразованный с помощью NAT (часть внешнего сопоставления).

    Например, если локальный IP-адрес BGP равен 10.30.0.133 и существует правило входящего NAT, которое преобразует 10.30.0.0/24 на 172.30.0.0/24, Адрес BGP для канала VPN-сайта Подключение ion BGP должен быть преобразованным адресом (172.30.0.133).

  • При динамическом NAT локальный одноранговый IP-адрес BGP не может входить в диапазон адресов до преобразования NAT (внутреннее сопоставление), так как сопоставления IP-адресов и портов не являются фиксированными. Если вам нужно преобразовывать локальный IP-адрес пиринга BGP, создайте отдельное статическое правило NAT для конкретного IP-адреса пиринга BGP.

    Например, если в локальной сети есть адресное пространство 10.0.0.0/24 с локальным IP-адресом пиринга BGP 10.0.0.1, и существует правило динамического преобразования NAT для входящего трафика, которое сопоставляет диапазоны 10.0.0.0/24 и 192.198.0.0/32, следует создать отдельное правило преобразования NAT для входящего трафика, которое сопоставит адреса 10.0.0.1/32 и 192.168.0.02/32, при этом нужно задать для соответствующего VPN-сайта адрес BGP подключения, который присваивается ему после преобразования NAT (ExternalMapping).

SNAT для входящего трафика (VPN-сайт со статически настроенными маршрутами)

Правила SNAT для входящего трафика применяются к пакетам, которые поступают в Azure через VPN-шлюз типа "сеть — сеть" Виртуальной глобальной сети. В этом сценарии необходимо подключить к Azure две ветви VPN типа "сеть — сеть". VPN-сайт 1 подключается по каналу A, а VPN-сайт 2 — по каналу B. У сайтов одно и то же адресное пространство 10.30.0.0/24.

В этом примере мы будем преобразовывать сетевые адреса VPN-сайта 1 в 172.30.0.0.0/24. Однако, так как VPN-сайт не подключен к VPN-шлюзу типа "сеть — сеть" по протоколу BGP, этапы настройки будут немного иными, чем в примере с поддержкой BGP.

Снимок экрана: конфигурации схем для VPN-сайтов, использующих статическую маршрутизацию

  1. Указание правила NAT

    Укажите правило NAT, чтобы VPN-шлюз типа "сеть — сеть" можно различать две ветви с одинаковым адресным пространством 10.30.0.0/24. В этом примере мы рассмотрим канал A для VPN-сайта 1.

    Следующее правило NAT можно настроить и связать с link A одного из VPN-сайтов 1. Так как это статическое правило преобразования сетевых адресов, диапазоны адресов внутреннего и внешнего сопоставлений содержат одинаковое число IP-адресов.

    • Имя: IngressRule01
    • Тип: статическое
    • Режим: IngressSnat
    • Внутреннее сопоставление: 10.30.0.0/24
    • Внешнее сопоставление: 172.30.0.0/24
    • Подключение по каналу: канал A
  2. Измените поле "Частный диапазон IP-адресов" VPN-сайта 1, чтобы VPN-шлюз типа "сеть — сеть" узнавал диапазон после NAT (172.30.0.0/24).

    • Перейдите к ресурсу виртуального концентратора, который содержит VPN-шлюз типа "сеть — сеть". На странице виртуального концентратора в разделе "Подключение" выберите VPN (сеть — сеть).

    • Выберите VPN-сайт, подключенный к концентратору Виртуальной глобальной сети по каналу A. Выберите Изменить сайт и введите 172.30.0.0/24 в качестве частного диапазона IP-адресов для VPN-сайта.

      Снимок экрана: изменение частного диапазона IP-адресов VPN-сайта

Рекомендации в случае статической настройки VPN-сайтов (без подключения по протоколу BGP)

  • Для статического преобразования "один к одному" размер подсети как для внутреннего, так и для внешнего сопоставления должен совпадать.
  • Измените VPN-сайт на портале Azure, чтобы добавить префиксы во внешнее сопоставлениеправил NAT для входящего трафика в поле "Частный диапазон IP-адресов".
  • Для конфигураций, включающих правила NAT для исходящего трафика, на локальном устройстве необходимо применить политику маршрутов или статический маршрут с внешним сопоставлениемправила NAT для исходящего трафика.

Поток пакетов

В предыдущих примерах локальному устройству требовалось получить доступ к ресурсу в периферийной виртуальной сети. Поток пакетов выглядит следующим образом (преобразования NAT выделены полужирным шрифтом).

  1. Инициируется трафик из локальной среды.

    • Исходный IP-адрес: 10.30.0.4
    • Конечный IP-адрес: 10.200.0.4
  2. Трафик поступает на шлюз "сеть — сеть" и преобразуется с помощью правила NAT, после чего отправляется в периферийную виртуальную сеть.

    • Исходный IP-адрес: 172.30.0.4
    • Конечный IP-адрес: 10.200.0.4
  3. Инициируется ответ из периферийной виртуальной сети.

    • Исходный IP-адрес: 10.200.0.4
    • Конечный IP-адрес: 172.30.0.4
  4. Трафик входит в VPN-шлюз типа "сеть — сеть", а перевод выполняется обратно и отправляется в локальную среду.

    • Исходный IP-адрес: 10.200.0.4
    • Конечный IP-адрес: 10.30.0.4

Проверки

В этом разделе показано, как проверить, правильно ли настроена конфигурация.

Проверка динамических правил NAT

  • Используйте динамические правила NAT, если целевой пул адресов меньше, чем исходный пул адресов.

  • Поскольку динамическое правило NAT не фиксирует комбинации IP-адресов и портов, локальный одноранговый IP-адрес BGP не может входить в диапазон адресов до преобразования NAT (внутреннее сопоставление). Создайте отдельное статическое правило NAT, которое преобразует один IP-адрес пиринга BGP.

    Например:

    • Локальный диапазон адресов: 10.0.0.0/24.
    • IP-адрес для BGP в локальной среде: 10.0.0.1
    • Правило динамического NAT для входящего трафика: 192.168.0.1/32
    • Правило статического NAT для входящего трафика: 10.0.0.1 -> 192.168.0.2

Проверка DefaultRouteTable, правил и маршрутов

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

Из предыдущего примера

  • Префикс: 172.30.0.0/24
  • Тип следующего прыжка: VPN_S2S_Gateway
  • Следующий прыжок: VPN_S2S_Gateway Resource

Проверка префиксов адресов

Этот пример применяется к ресурсам в виртуальных сетях, связанных с DefaultRouteTable.

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

Локальное устройство также должно содержать маршруты для префиксов, содержащихся во внешнем сопоставленииправил NAT для исходящего трафика.

Распространенные шаблоны конфигурации

Примечание.

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

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

Тип VPN-сайта Правила NAT для входящего трафика Правила NAT для исходящего трафика
VPN-сайт со статически настроенными маршрутами Измените поле "Частный диапазон IP-адресов" на VPN-сайте таким образом, чтобы оно содержало внешнее сопоставление правила NAT. Примените маршруты для внешнего сопоставления правила NAT на локальном устройстве.
VPN-сайт (с поддержкой преобразования BGP) Укажите адрес внешнего сопоставления однорангового узла BGP в адресе BGP подключения по каналу VPN-сайта. Специальные рекомендации отсутствуют.
VPN-сайт (без поддержки преобразования BGP) Убедитесь, что локальный маршрутизатор, на котором выполняется протокол BGP, объявляет префиксы во внешнем сопоставлении правила NAT. Укажите также адрес внешнего сопоставления однорангового узла BGP в адресе BGP подключения по каналу VPN-сайта. Примените маршруты для внешнего сопоставления правила NAT на локальном устройстве.

Следующие шаги

Дополнительные сведения о конфигурациях "сеть — сеть" см. в статье Настройка подключения "сеть — сеть" виртуальной глобальной сети.