Краткое руководство. Создание и настройка сервера маршрутизации с помощью Azure CLI

Эта статья поможет вам настроить Azure Route Server для пиринга с виртуальным сетевым модулем (NVA) в виртуальной сети с помощью Azure PowerShell. Route Server изучает маршруты из виртуального виртуального модуля и программирует их на виртуальных машинах в виртуальной сети. Он также будет объявлять маршруты виртуальной сети к NVA. См. дополнительные сведения об Azure Route Server.

Схема среды развертывания Route Server с использованием Azure CLI.

Важно!

Серверы Azure Route Server, созданные до 1 ноября 2021 г. и не имеющие связанных общедоступных IP-адресов, развертываются в рамках предложения общедоступной предварительной версии. На предложение общедоступной предварительной версии не распространяется поддержка и соглашение об уровне обслуживания для общедоступной версии. Чтобы развернуть Azure Route Server в рамках предложения общедоступной версии и получить поддержку и соглашение об уровне обслуживания для общедоступной версии, удалите Route Server и создайте его заново.

Предварительные требования

  • Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно.
  • Действия, описанные в этой статье, выполняют команды Azure CLI в интерактивном режиме в Azure Cloud Shell. Чтобы выполнить команды в Cloud Shell, выберите Открыть Cloudshell в правом верхнем углу блока кода. Выберите Копировать, чтобы скопировать код, и вставьте его в Cloud Shell, чтобы запустить его. Вы также можете запустить Cloud Shell из портал Azure. Вы также можете установить Azure CLI локально для выполнения команд. Если вы запускаете Azure CLI локально, войдите в Azure с помощью команды az login .
  • Ознакомьтесь с ограничениями службы для сервера маршрутизации Azure.

Создание группы ресурсов и виртуальной сети

Создание группы ресурсов

Прежде чем создавать сервер Azure Route Server, необходимо создать группу ресурсов для его размещения. Создайте группу ресурсов с помощью команды az group create. В следующем примере создается группа ресурсов с именем myRouteServerRG в расположении WestUS.

az group create \
    --name myRouteServerRG \
    --location westus

Создание виртуальной сети

Создайте виртуальную сеть с помощью команды az network vnet create. В следующем примере создается виртуальная сеть по умолчанию, myVirtualNetwork. Если у вас уже есть виртуальная сеть, можно перейти к следующему разделу.

az network vnet create \
    --name myVirtualNetwork \
    --resource-group myRouteServerRG \
    --address-prefix 10.0.0.0/16 

Добавление выделенной подсети

Для Azure Route Server требуется выделенная подсеть с именем RouteServerSubnet. Размер подсети должен быть не менее /27 или меньше префикса (например, /26 или /25). В противном случае при развертывании сервера маршрутизации может появиться сообщение об ошибке. Создайте конфигурацию подсети RouteServerSubnet с помощью команды az network vnet subnet create.

  1. Выполните следующую команду, чтобы добавить RouteServerSubnet в виртуальную сеть.

    az network vnet subnet create \
        --name RouteServerSubnet \
        --resource-group myRouteServerRG \
        --vnet-name myVirtualNetwork \
        --address-prefix 10.0.0.0/24
    
  2. Запишите идентификатор RouteServerSubnet. Чтобы получить и сохранить идентификатор ресурса RouteServerSubnet в переменной subnet_id, используйте команду az network vnet subnet show.

    subnet_id=$(az network vnet subnet show \
        --name RouteServerSubnet \
        --resource-group myRouteServerRG \
        --vnet-name myVirtualNetwork \
        --query id -o tsv) 
    
    echo $subnet_id
    

Создание сервера маршрутизации

  1. Чтобы гарантировать подключение к внутренней службе, управляющей конфигурацией Route Server, необходимо назначить общедоступный IP-адрес. С помощью командлета az network public-ip create создайте стандартный общедоступный IP-адрес с именем RouteServerIP.

    az network public-ip create \
        --name RouteServerIP \
        --resource-group myRouteServerRG \
        --version IPv4 \
        --sku Standard
    
  2. Создайте экземпляр Azure Route Server с помощью команды az network routeserver create. В этом примере создается сервер Azure Route Server с именем myRouteServer. HostedSubnet — это идентификатор ресурса RouteServerSubnet, созданный в предыдущем разделе.

    az network routeserver create \
        --name myRouteServer \
        --resource-group myRouteServerRG \
        --hosted-subnet $subnet_id \
        --public-ip-address RouteServerIP
    

Создание пиринга BGP с NVA

Используйте az network routeserver peering create, чтобы установить пиринг BGP между сервером маршрутизации и NVA.

peer-ip — это IP-адрес виртуальной сети, назначенный NVA. peer-asn — это номер ASN, настроенный в NVA. Номер ASN может быть любым 16-разрядным числом, отличающимся от значений в диапазоне 65515–65520. Этот диапазон ASN зарезервирован корпорацией Майкрософт.

az network routeserver peering create \
    --name myNVA \
    --peer-ip 192.168.0.1 \
    --peer-asn 65501 \
    --routeserver myRouteServer \
    --resource-group myRouteServerRG

Чтобы настроить пиринг с другим NVA или другим экземпляром того же NVA для обеспечения избыточности, используйте предыдущую команду с разными peerName, PeerIp и PeerAsn.

Завершение настройки NVA

Чтобы завершить настройку NVA и включить сеансы BGP, требуется IP-адрес и номер ASN сервера маршрутизации Azure. Эти данные можно получить с помощью командлета az network routeserver show.

az network routeserver show \
    --name myRouteServer \
    --resource-group myRouteServerRG 

Выходные данные будут выглядеть следующим образом:

RouteServerAsn  : 65515 

RouteServerIps  : {10.5.10.4, 10.5.10.5}  "virtualRouterAsn": 65515, 

  "virtualRouterIps": [ 

    "10.0.0.4", 

    "10.0.0.5" 

  ], 

Важно!

Мы рекомендуем выполнить пиринг каждого NVA с обоими экземплярами Route Server, чтобы обеспечить объявление маршрутов виртуальной сети через подключения NVA и обеспечить высокий уровень доступности.

Настройка обмена маршрутами

При наличии шлюза виртуальной сети (ExpressRoute или VPN) в той же виртуальной сети можно включить трафик b2b для обмена маршрутами между шлюзом и сервером маршрутизации.

Важно!

VPN-шлюз Azure должен быть настроен в режиме "активный — активный " и иметь asn 65515.

Предупреждение

При создании или удалении сервера маршрутизации в виртуальной сети, содержащей шлюз виртуальной сети (ExpressRoute или VPN), ожидайте простоя до завершения операции. Если у вас есть канал ExpressRoute, подключенный к виртуальной сети, в которой вы создаете или удаляете сервер Маршрутизации, простой не влияет на канал ExpressRoute или его подключения к другим виртуальным сетям.

  1. Чтобы включить обмен маршрутами между Azure Route Server и шлюзами, используйте команду az network routerserver update с флагом --allow-b2b-traffictrue:

    az network routeserver update \
        --name myRouteServer \
        --resource-group myRouteServerRG \
        --allow-b2b-traffic true 
    
  2. Чтобы отключить обмен маршрутами между Azure Route Server и шлюзами, используйте команду az network routerserver update с флагом --allow-b2b-trafficfalse:

    az network routeserver update \
        --name myRouteServer \
        --resource-group myRouteServerRG \
        --allow-b2b-traffic false 
    

Устранение неполадок

Используйте команду az network routeserver peering list-advertised-routes для просмотра маршрутов, объявленных Azure Route Server.

az network routeserver peering list-advertised-routes \
    --name myNVA \
    --routeserver myRouteServer \
    --resource-group myRouteServerRG

Используйте команду az network routeserver peering list-learned-routes для просмотра маршрутов, полученных Azure Route Server.

az network routeserver peering list-learned-routes \
    --name myNVA \
    --routeserver myRouteServer
    --resource-group myRouteServerRG \

Azure CLI может выполняться в нескольких средах оболочки, но с небольшими вариантами формата. Если вы столкнулись с непредвиденными результатами с командами Azure CLI, см. раздел Как успешно использовать Azure CLI.

Очистка ресурсов

Если сервер Azure Route Server больше не нужен, удалите пиринг BGP с помощью первой команды и сервер Route Server с помощью второй.

  1. Удалите пиринг BGP между Azure Route Server и NVA с помощью командлета az network routeserver peering delete.

    az network routeserver peering delete \
        --name myNVA \
        --routeserver myRouteServer \
        --resource-group myRouteServerRG
    
  2. Удалите экземпляр Azure Route Server с помощью команды az network routeserver delete.

    az network routeserver delete \
        --name myRouteServer \
        --resource-group myRouteServerRG
    

Дальнейшие действия

Создав сервер Azure Route Server, вы можете продолжить изучение способов взаимодействия Azure Route Server с ExpressRoute и VPN-шлюзами: