Поделиться через


Создание подключения типа "сеть — сеть" с Виртуальной глобальной сетью Azure с помощью PowerShell

В этой статье объясняется, как создать подключение к ресурсам в Azure через VPN-соединение IPsec/IKE (IKEv1 и IKEv2) с помощью Виртуальной глобальной сети через PowerShell. Для этого типа подключения требуется локальное VPN-устройство, которому назначен внешний общедоступный IP-адрес. Дополнительные сведения о Виртуальной глобальной сети см. в этой статье. Эту конфигурацию также можно создать с помощью инструкций портал Azure.

Снимок экрана: схема сети для Виртуальной глобальной сети.

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

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

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

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

Azure PowerShell

В этой статье используются командлеты PowerShell. Для запуска командлетов можно использовать Azure Cloud Shell. Cloud Shell — это бесплатная интерактивная оболочка, с помощью которой можно выполнять действия, описанные в этой статье. Она включает предварительно установленные общие инструменты Azure и настроена для использования с вашей учетной записью.

Чтобы открыть Cloud Shell, просто выберите Открыть Cloudshell в правом верхнем углу блока кода. Кроме того, Cloud Shell можно открыть в отдельной вкладке браузера. Для этого перейдите на страницу https://shell.azure.com/powershell. Нажмите кнопку Копировать, чтобы скопировать блоки кода. Вставьте их в Cloud Shell и нажмите клавишу ВВОД, чтобы выполнить код.

Кроме того, вы можете установить и запускать командлеты Azure PowerShell локально на компьютере. Командлеты PowerShell часто обновляются. Если вы еще не установили последнюю версию, значения, указанные в инструкциях, могут завершиться ошибкой. Чтобы узнать, какая версия Azure PowerShell установлена на вашем компьютере, используйте командлет Get-Module -ListAvailable Az. Если необходимо выполнить установку или обновление, см. статью об установке модуля Azure PowerShell.

Войти

Если вы используете Azure Cloud Shell вы будете автоматически перенаправлены на вход в свою учетную запись после открытия Cloudshell. Вам не нужно выполнять Connect-AzAccount. После входа вы по-прежнему можете изменять подписки при необходимости с помощью Get-AzSubscription и Select-AzSubscription.

Если вы используете PowerShell локально, откройте консоль PowerShell с повышенными привилегиями и подключитесь к учетной записи Azure. Командлет Connect-AzAccount запрашивает учетные данные. После аутентификации будут скачаны параметры вашей учетной записи, чтобы они были доступны для Azure PowerShell. Подписку можно изменить с помощью Get-AzSubscription и Select-AzSubscription -SubscriptionName "Name of subscription".

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

Перед созданием виртуальной глобальной сети для ее размещения необходимо создать группу ресурсов или выбрать существующую. Используйте один из следующих примеров.

В этом примере создается новая группа ресурсов с именем TestRG в расположении "Восточная часть США ". Если вы хотите использовать существующую группу ресурсов, можно изменить $resourceGroup = Get-AzResourceGroup -ResourceGroupName "NameofResourceGroup" команду, а затем выполнить действия в этом упражнении, используя собственные значения.

  1. Создайте группу ресурсов.

    New-AzResourceGroup -Location "East US" -Name "TestRG" 
    
  2. Создайте виртуальную глобальную сеть с помощью командлета New-AzVirtualWan .

    $virtualWan = New-AzVirtualWan -ResourceGroupName TestRG -Name TestVWAN1 -Location "East US"
    

Создание центра и настройка параметров концентратора

Концентратор — это виртуальная сеть, которая может содержать шлюзы для подключений "сеть — сеть", "точка — сеть" или каналов ExpressRoute. Создайте виртуальный концентратор с New-AzVirtualHub. В этом примере создается виртуальный концентратор по умолчанию с именем Hub1 с указанным префиксом адреса и расположением для концентратора.

$virtualHub = New-AzVirtualHub -VirtualWan $virtualWan -ResourceGroupName "TestRG" -Name "Hub1" -AddressPrefix "10.1.0.0/16" -Location "westus"

создание шлюза VPN типа "сеть — сеть";

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

  1. Если вы закрыли Cloud Shell Azure или истекло время ожидания подключения, может потребоваться снова объявить переменную для $virtualHub.

    $virtualHub = Get-AzVirtualHub -ResourceGroupName "TestRG" -Name "Hub1"
    
  2. Создайте VPN-шлюз с помощью командлета New-AzVpnGateway .

    New-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1" -VirtualHubId $virtualHub.Id -VpnGatewayScaleUnit 2
    
  3. После создания шлюза VPN его можно просмотреть, используя следующий пример.

    Get-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1"
    

Создание сайта и подключений

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

  1. Задайте переменные для VPN-шлюза и пространства IP-адресов, расположенного на локальном сайте. Трафик, предназначенный для этого адресного пространства, перенаправляется на ваш локальный сайт. Это необходимо, если для узла не включен протокол BGP.

    $vpnGateway = Get-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1"
    $vpnSiteAddressSpaces = New-Object string[] 2
    $vpnSiteAddressSpaces[0] = "192.168.2.0/24"
    $vpnSiteAddressSpaces[1] = "192.168.3.0/24"
    
  2. Создайте ссылки для добавления сведений о физических каналах филиала, включая метаданные о скорости связи, имени поставщика связи и общедоступном IP-адресе локального устройства.

    $vpnSiteLink1 = New-AzVpnSiteLink -Name "TestSite1Link1" -IpAddress "15.25.35.45" -LinkProviderName "SomeTelecomProvider" -LinkSpeedInMbps "10"
    $vpnSiteLink2 = New-AzVpnSiteLink -Name "TestSite1Link2" -IpAddress "15.25.35.55" -LinkProviderName "SomeTelecomProvider2" -LinkSpeedInMbps "100"
    
  3. Создайте сайт VPN, используя переменные со ссылками на VPN-сайт, которые вы только что создали.

    Если вы закрыли Cloud Shell Azure или истекло время ожидания подключения, повторно объявите переменную виртуальной глобальной сети:

    $virtualWan = Get-AzVirtualWAN -ResourceGroupName "TestRG" -Name "TestVWAN1"
    

    Создайте сайт VPN с помощью командлета New-AzVpnSite .

    $vpnSite = New-AzVpnSite -ResourceGroupName "TestRG" -Name "TestSite1" -Location "westus" -VirtualWan $virtualWan -AddressSpace $vpnSiteAddressSpaces -DeviceModel "SomeDevice" -DeviceVendor "SomeDeviceVendor" -VpnSiteLink @($vpnSiteLink1, $vpnSiteLink2)
    
  4. Создайте подключение между сайтом и каналом. Подключение состоит из двух туннелей "активный — активный" из ветви или сайта в масштабируемый шлюз.

    $vpnSiteLinkConnection1 = New-AzVpnSiteLinkConnection -Name "TestLinkConnection1" -VpnSiteLink $vpnSite.VpnSiteLinks[0] -ConnectionBandwidth 100
    $vpnSiteLinkConnection2 = New-AzVpnSiteLinkConnection -Name "testLinkConnection2" -VpnSiteLink $vpnSite.VpnSiteLinks[1] -ConnectionBandwidth 10
    

Подключение сайта VPN к концентратору

Подключите vpn-сайт к VPN-шлюзу типа "сеть — сеть" концентратора с помощью командлета New-AzVpnConnection .

  1. Перед выполнением команды может потребоваться повторно объявить следующие переменные:

    $virtualWan = Get-AzVirtualWAN -ResourceGroupName "TestRG" -Name "TestVWAN1"
    $vpnGateway = Get-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1"
    $vpnSite = Get-AzVpnSite -ResourceGroupName "TestRG" -Name "TestSite1"
    
  2. Подключите сайт VPN к концентратору.

    New-AzVpnConnection -ResourceGroupName $vpnGateway.ResourceGroupName -ParentResourceName $vpnGateway.Name -Name "testConnection" -VpnSite $vpnSite -VpnSiteLinkConnection @($vpnSiteLinkConnection1, $vpnSiteLinkConnection2)
    

Подключение виртуальной сети к концентратору

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

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

Для создания виртуальной сети можно использовать следующие примеры значений. Обязательно замените значения в примерах значениями, которые использовались для вашей среды. Дополнительные сведения см. в статье Краткое руководство. Создание виртуальной сети с помощью Azure PowerShell.

  1. Как создать виртуальную сеть.

    $vnet = @{
       Name = 'VNet1'
       ResourceGroupName = 'TestRG'
       Location = 'eastus'
       AddressPrefix = '10.21.0.0/16'
    }
    $virtualNetwork = New-AzVirtualNetwork @vnet
    
  2. Укажите параметры подсети.

    $subnet = @{
       Name = 'Subnet-1'
       VirtualNetwork = $virtualNetwork
       AddressPrefix = '10.21.0.0/24'
    }
    $subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
    
  3. Задайте виртуальную сеть.

    $virtualNetwork | Set-AzVirtualNetwork
    

Подключение виртуальной сети к концентратору.

После создания виртуальной сети выполните действия, описанные в этой статье, чтобы подключить виртуальную сеть к концентратору VWAN: Подключение виртуальной сети к Виртуальная глобальная сеть концентратору.

Настройка VPN-устройства

Чтобы настроить локальное VPN-устройство, выполните действия, описанные в статье Сеть — сеть: портал Azure.

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

Если созданные ресурсы вам больше не нужны, удалите их. Некоторые ресурсы Виртуальной глобальной сети необходимо удалять в определенном порядке с учетом зависимостей. Удаление может занять около 30 минут.

Удалите все сущности шлюза в следующем порядке:

  1. Объявите переменные.

    $resourceGroup = Get-AzResourceGroup -ResourceGroupName "TestRG" 
    $virtualWan = Get-AzVirtualWan -ResourceGroupName "TestRG" -Name "TestVWAN1"
    $virtualHub = Get-AzVirtualHub -ResourceGroupName "TestRG" -Name "Hub1"
    $vpnGateway = Get-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1"
    
  2. Удалите подключение VPN-шлюза к VPN-сайтам.

    Remove-AzVpnConnection -ResourceGroupName $vpnGateway.ResourceGroupName -ParentResourceName $vpnGateway.Name -Name "testConnection"
    
  3. Удалите VPN-шлюз. При удалении VPN-шлюза также будут удалены все связанные с ним подключения ExpressRoute.

    Remove-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1"
    
  4. На этом этапе можно выполнить одно из двух действий:

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

    Чтобы удалить всю группу ресурсов, выполните следующие действия.

    Remove-AzResourceGroup -Name "TestRG"
    

    Чтобы удалить каждый ресурс в группе ресурсов, выполните следующие действия.

    • Удалите сайт VPN.

      Remove-AzVpnSite -ResourceGroupName "TestRG" -Name "TestSite1"
      
    • Удалите виртуальный концентратор.

      Remove-AzVirtualHub -ResourceGroupName "TestRG" -Name "Hub1"
      
    • Удалите Виртуальную глобальную сеть.

      Remove-AzVirtualWan -Name "TestVWAN1" -ResourceGroupName "TestRG"
      

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

Дополнительные сведения о Виртуальной глобальной сети см. в статье Вопросы и ответы о Виртуальной глобальной сети.