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

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

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

Diagram of Gateway transit.

Параметр транзита доступен для пиринга между одинаковыми или разными моделями развертывания и может использоваться со всеми VPN-шлюз номера SKU, кроме номера SKU "Базовый". Если вы настраиваете транзит между различными моделями развертывания, виртуальная сеть концентратора и шлюз виртуальной сети должны находиться в модели развертывания Resource Manager, а не в устаревшей классической модели развертывания.

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

Вы можете отключить автоматическое распространение маршрута из VPN-шлюза. Создайте таблицу маршрутизации с параметром Отключить распространение маршрутов BGP и привяжите ее к подсетям, чтобы предотвратить распространение маршрута в этих подсетях. Дополнительные сведения см. в статье Create, change, or delete a route table (Создание, изменение или удаление таблицы маршрутизации).

В этой статье существует два сценария. Выберите сценарий, который применяется к вашей среде. Большинство пользователей используют тот же сценарий модели развертывания. Если вы не работаете с классической виртуальной сетью модели развертывания (устаревшей виртуальной сетью), которая уже существует в вашей среде, вам не потребуется работать с разными моделями развертывания.

  • Одна и та же модель развертывания. Обе виртуальные сети создаются в рамках модели развертывания Resource Manager.
  • Различные модели развертывания. Периферийная виртуальная сеть создается в рамках классической модели развертывания, а виртуальная сеть концентратора и шлюз — в рамках модели развертывания Resource Manager. Этот сценарий полезен при подключении устаревшей виртуальной сети, которая уже существует в классической модели развертывания.

Примечание.

Если вы внесли изменения в топологию сети и используете VPN-клиенты Windows, необходимо повторно скачать и установить пакет VPN-клиента для клиентов Windows, чтобы изменения были применены к клиентам.

Необходимые компоненты

В этой статье требуются следующие виртуальные сети и разрешения. Если вы не работаете с различным сценарием модели развертывания, вам не нужно создавать классическую виртуальную сеть.

Виртуальные сети

Виртуальная сеть Шаги настройки Шлюз виртуальной сети
Hub-RM Resource Manager Да
Spoke-RM Resource Manager No
Spoke-Classic Классическое No

Разрешения

У учетных записей, используемых для создания пиринга между виртуальными сетями, должны быть необходимые роли или разрешения. В приведенном ниже примере при создании пиринга между двумя виртуальными сетями Hub-RM и Spoke-Classic вашей учетной записи должны быть назначены следующие роли или разрешения для каждой виртуальной сети:

Виртуальная сеть Модель развертывания Role Разрешения
Hub-RM Resource Manager Участник сети Microsoft.Network/virtualNetworks/virtualNetworkPeerings/write
Классическое Участник классической сети Н/П
Spoke-Classic Resource Manager Участник сети Microsoft.Network/virtualNetworks/peer
Классическое Участник классической сети Microsoft.ClassicNetwork/virtualNetworks/peer

Подробнее о встроенных ролях и присвоении разрешений, определенных для настраиваемых ролей (только для Resource Manager).

Одна и та же модель развертывания

Это более распространенный сценарий. В этом сценарии для виртуальных сетей используется модель развертывания Resource Manager. Выполните указанные ниже шаги, чтобы создать или обновить пиринг между виртуальными сетями для включения транзита через шлюз.

Добавление пиринга и включение транзита

  1. На портале Azure создайте или обновите пиринг между виртуальными сетями (от Hub-RM). Перейдите в виртуальную сеть Hub-RM . Выберите Пиринги, а затем — + Добавить, чтобы открыть страницу Добавить пиринг.

  2. На странице Добавить пиринг задайте соответствующие значения для элемента This virtual network (Эта виртуальная сеть).

    • Имя пиринговой связи — присвойте связи имя. Пример: HubRMToSpokeRM.

    • Трафик в удаленную виртуальную сеть: Разрешить.

    • Трафик, перенаправленный из удаленной виртуальной сети: Разрешить.

    • Шлюз виртуальной сети: используйте шлюз виртуальной сети или сервер маршрутизации.

      Screenshot shows add peering.

  3. На той же странице укажите соответствующие значения для элемента Удаленная виртуальная сеть.

    • Имя пиринговой связи — присвойте связи имя. Пример: SpokeRMtoHubRM.

    • Модель развертывания виртуальной сети: Resource Manager

    • Я знаю идентификатор ресурса: оставьте пустым. Это необходимо выбрать, только если у вас нет доступа на чтение к виртуальной сети или подписке, с которой вы хотите выполнить пиринг.

    • Подписка: выберите подписку.

    • Виртуальная сеть: Spoke-RM.

    • Трафик в удаленную виртуальную сеть: Разрешить.

    • Трафик, перенаправленный из удаленной виртуальной сети: Разрешить.

    • Шлюз виртуальной сети. Использование шлюза удаленной виртуальной сети или сервера маршрутизации

      Screenshot shows values for remote virtual network.

  4. Для создания пиринга нажмите кнопку Добавить.

  5. Убедитесь, что состояние пиринга для обеих виртуальных сетей следующее: Подключено.

Изменение имеющегося пиринга для транзита

Если у вас уже есть пиринг, можно изменить пиринг для транзита.

  1. Перейдите в виртуальную сеть. Выберите Пиринги, а затем выберите пиринг, который требуется изменить. Например, в виртуальной сети "Периферийный RM" выберите пиринг SpokeRMtoHubRM.

  2. Обновите пиринг между виртуальными сетями.

    • Трафик в удаленную виртуальную сеть: Разрешить.
    • Трафик, перенаправленный в виртуальную сеть: Разрешить.
    • Шлюз виртуальной сети или сервер маршрутизации: используйте шлюз удаленной виртуальной сети или сервер маршрутизации.
  3. Сохраните параметры пиринга.

Пример для PowerShell

Вы также можете использовать PowerShell для создания или обновления пиринга. Замените переменные именами ваших виртуальных сетей и групп ресурсов.

$SpokeRG = "SpokeRG1"
$SpokeRM = "Spoke-RM"
$HubRG   = "HubRG1"
$HubRM   = "Hub-RM"

$spokermvnet = Get-AzVirtualNetwork -Name $SpokeRM -ResourceGroup $SpokeRG
$hubrmvnet   = Get-AzVirtualNetwork -Name $HubRM -ResourceGroup $HubRG

Add-AzVirtualNetworkPeering `
  -Name SpokeRMtoHubRM `
  -VirtualNetwork $spokermvnet `
  -RemoteVirtualNetworkId $hubrmvnet.Id `
  -UseRemoteGateways

Add-AzVirtualNetworkPeering `
  -Name HubRMToSpokeRM `
  -VirtualNetwork $hubrmvnet `
  -RemoteVirtualNetworkId $spokermvnet.Id `
  -AllowGatewayTransit

Разные модели развертывания

В этой конфигурации периферийная виртуальная сеть Spoke-Classic используется в рамках классической модели развертывания, а виртуальная сеть концентратора Hub-RM — в рамках модели развертывания Resource Manager. При настройке транзита между моделями развертывания шлюз виртуальной сети должен быть настроен для виртуальной сети Resource Manager, а не для классической виртуальной сети.

Для этой конфигурации необходимо настроить только виртуальную сеть Hub-RM. Вам не нужно настраивать что-либо в виртуальной сети Spoke-Classic.

  1. В портал Azure перейдите в виртуальную сеть Hub-RM, выберите пиринги, а затем нажмите кнопку +Добавить.

  2. На странице Добавить пиринг задайте указанные ниже значения.

    • Имя пиринговой связи — присвойте связи имя. Пример: HubRMToClassic.

    • Трафик в удаленную виртуальную сеть: Разрешить.

    • Трафик, перенаправленный из удаленной виртуальной сети: Разрешить.

    • Шлюз виртуальной сети или сервер маршрутизации: используйте шлюз или сервер маршрутизации этой виртуальной сети.

    • Имя ссылки пиринга: это значение исчезает при выборе классической модели развертывания виртуальной сети.

    • Модель развертывания виртуальной сети: классическая модель

    • Я знаю идентификатор ресурса: оставьте пустым. Это необходимо выбрать, только если у вас нет доступа на чтение к виртуальной сети или подписке, с которой вы хотите выполнить пиринг.

      Add peering page for Spoke-Classic

  3. Убедитесь, что подписка правильная, а затем выберите виртуальную сеть из раскрывающегося списка.

  4. Нажмите кнопку Добавить, чтобы добавить пиринг.

  5. Проверьте, чтобы состояние пиринга для виртуальной сети Hub-RM было следующим: Подключено.

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

Пример для PowerShell

Вы также можете использовать PowerShell для создания или обновления пиринга. Замените переменные и идентификатор подписки на значения вашей виртуальной сети, групп ресурсов и подписки. Вам нужно всего лишь создать пиринг между виртуальными сетями в виртуальной сети концентратора.

$HubRG   = "HubRG1"
$HubRM   = "Hub-RM"

$hubrmvnet   = Get-AzVirtualNetwork -Name $HubRM -ResourceGroup $HubRG

Add-AzVirtualNetworkPeering `
  -Name HubRMToClassic `
  -VirtualNetwork $hubrmvnet `
  -RemoteVirtualNetworkId "/subscriptions/<subscription Id>/resourceGroups/Default-Networking/providers/Microsoft.ClassicNetwork/virtualNetworks/Spoke-Classic" `
  -AllowGatewayTransit

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