次の方法で共有


PowerShell を使用して Azure Virtual WAN へのサイト間接続を作成する

この記事では、Virtual WAN を使用して、PowerShell 経由で IPsec/IKE (IKEv1 および IKEv2) VPN 接続経由で Azure 内のリソースに接続する方法について説明します。 この種類の接続では、外部接続用パブリック IP アドレスが割り当てられていてるオンプレミスの VPN デバイスが必要です。 Virtual WAN の詳細については、Virtual WAN の概要を参照してください。 この構成は、Azure portal の 手順を使用して作成することもできます。

Virtual WAN のネットワーク図を示すスクリーンショット。

前提条件

  • Azure サブスクリプションを持っていることを確認します。 Azure サブスクリプションをまだお持ちでない場合は、MSDN サブスクライバーの特典を有効にするか、無料アカウントにサインアップしてください。

  • 仮想ハブのプライベート アドレス空間に使用する IP アドレスの範囲を決定します。 この情報は、仮想ハブを構成するときに使用されます。 仮想ハブは、仮想 WAN によって作成および使用される仮想ネットワークです。 リージョン内の Virtual WAN ネットワークの核となります。 アドレス空間の範囲は、次の特定の規則に準拠している必要があります。

    • ハブに指定するアドレス範囲が、接続先の既存の仮想ネットワークと重複することはできません。
    • このアドレス範囲が、接続するオンプレミスのアドレス範囲と重複することはできません。
    • オンプレミス ネットワーク構成に含まれている IP アドレス範囲になじみがない場合は、それらの詳細を提供できるだれかと調整してください。

Azure PowerShell

この記事では、PowerShell コマンドレットを使用します。 コマンドレットを実行するには、Azure Cloud Shell を使用できます。 Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。

Cloud Shell を開くには、コード ブロックの右上の隅にある [Cloudshell を開く] を選択するだけです。 https://shell.azure.com/powershell に移動して、別のブラウザー タブで Cloud Shell を開くこともできます。 [コピー] を選択してコードのブロックをコピーし、Cloud Shell に貼り付けてから、Enter キーを押して実行します。

Azure PowerShell コマンドレットは、ローカルのコンピューターにインストールして実行することもできます。 PowerShell コマンドレットは頻繁に更新されます。 最新バージョンをインストールしていないと、手順で指定されている値は失敗する場合があります。 コンピューターにインストールされている Azure PowerShell のバージョンを確認するには、Get-Module -ListAvailable Az コマンドレットを使用します。 インストールまたは更新するには、「Install the Azure PowerShell module (Azure PowerShell モジュールのインストール)」を参照してください。

サインイン

Azure Cloud Shell を使用している場合は、Cloudshell を開いた後にアカウントにサインインするように自動的に指示されます。 Connect-AzAccount を実行する必要はありません。 サインイン後も、Get-AzSubscriptionSelect-AzSubscription を使用して、必要に応じてサブスクリプションを変更できます。

PowerShell をローカルで実行している場合は、昇格された特権で PowerShell コンソールを開き、Azure アカウントに接続します。 Connect-AzAccount コマンドレットでは資格情報が求められます。 認証後にアカウント設定がダウンロードされ、Azure PowerShell で使用できるようになります。 Get-AzSubscriptionSelect-AzSubscription -SubscriptionName "Name of subscription" を使用してサブスクリプションを変更できます。

仮想 WAN を作成する

仮想 WAN を作成する前に、仮想 WAN をホストするリソース グループを作成するか、既存のリソース グループを使用する必要があります。 次の例のいずれかを使用します。

次の例では、TestRG という名前の新しいリソース グループを、米国東部 場所で作成します。 代わりに既存のリソース グループを使用する場合は、$resourceGroup = Get-AzResourceGroup -ResourceGroupName "NameofResourceGroup" コマンドを変更し、独自の値を使用してこの演習の手順を実行できます。

  1. リソース グループを作成する。

    New-AzResourceGroup -Location "East US" -Name "TestRG" 
    
  2. New-AzVirtualWan コマンドレットを使用して仮想 wan を作成します。

    $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. Azure Cloud Shell を閉じた場合、または接続がタイムアウトした場合は、$virtualHubの変数をもう一度宣言することが必要になる場合があります。

    $virtualHub = Get-AzVirtualHub -ResourceGroupName "TestRG" -Name "Hub1"
    
  2. New-AzVpnGateway コマンドレットを使用して VPN ゲートウェイを作成します。

    New-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1" -VirtualHubId $virtualHub.Id -VpnGatewayScaleUnit 2
    
  3. VPN ゲートウェイを作成したら、次の例を使用してゲートウェイを表示できます。

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

サイトと接続を作成する

このセクションでは、物理的な場所に対応するサイトと接続を作成します。 これらのサイトには、オンプレミス VPN デバイスのエンドポイントが含まれています。 仮想 WAN 内の仮想ハブあたり最大 1,000 サイトを作成できます。 複数のハブがある場合は、それぞれのハブに 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 サイトを作成します。

    Azure Cloud Shell を閉じた場合、または接続がタイムアウトした場合は、次のように仮想 WAN 変数を再宣言します。

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

    New-AzVpnSite コマンドレットを使用して VPN サイトを作成します。

    $vpnSite = New-AzVpnSite -ResourceGroupName "TestRG" -Name "TestSite1" -Location "westus" -VirtualWan $virtualWan -AddressSpace $vpnSiteAddressSpaces -DeviceModel "SomeDevice" -DeviceVendor "SomeDeviceVendor" -VpnSiteLink @($vpnSiteLink1, $vpnSiteLink2)
    
  4. サイト リンク接続を作成します。 この接続は、ブランチ/サイトからスケーラブルなゲートウェイへの 2 つのアクティブ/アクティブ トンネルで構成されます。

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

VPN サイトをハブに接続する

New-AzVpnConnection コマンドレットを使用して、VPN サイトをハブ サイト間 VPN ゲートウェイに接続します。

  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)
    

VNet をハブに接続する

次の手順では、ハブを仮想ネットワーク (VNet) に接続します。 この演習用に新しいリソース グループを作成した場合、通常はリソース グループに VNet がまだ存在しません。 次の手順は、VNet がまだない場合に作成するのに役立ちます。 次にハブと VNet の間の接続を作成できます。

仮想ネットワークを作成する

次の例の値を使用して、VNet を作成できます。 自分の環境用に使用した値の代わりに、例の値を使用するようにしてください。 詳細については、「クイック スタート: Azure PowerShell を使用して仮想ネットワークを作成する」を参照してください。

  1. VNet を作成する。

    $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. VNet を設定します。

    $virtualNetwork | Set-AzVirtualNetwork
    

VNet をハブに接続する

VNet を作成したら、この記事の手順に従って VNet を VWAN ハブに接続します。VNet を Virtual WAN ハブに接続します。

VPN デバイスの構成

オンプレミス VPN デバイスを構成するには、「サイト間: Azure portal」の記事の手順に従います。

リソースをクリーンアップする

作成したリソースは、不要になったら削除してください。 Virtual WAN リソースのいくつかは、依存関係に応じた特定の順序で削除する必要があります。 削除が完了するまでに 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 ゲートウェイを削除すると、それに関連付けられているすべての VPN ExpressRoute 接続も削除されます。

    Remove-AzVpnGateway -ResourceGroupName "TestRG" -Name "vpngw1"
    
  4. この時点で、次の 2 つのいずれかを実行できます。

    • リソース グループ全体を削除すると、それに含まれる残りのすべてのリソース (ハブ、サイト、仮想 WAN など) を削除できます。
    • リソース グループ内の各リソースを削除することを選択できます。

    リソース グループ全体を削除するには:

    Remove-AzResourceGroup -Name "TestRG"
    

    リソース グループ内の各リソースを削除するには:

    • VPN サイトを削除します。

      Remove-AzVpnSite -ResourceGroupName "TestRG" -Name "TestSite1"
      
    • 仮想ハブを削除します。

      Remove-AzVirtualHub -ResourceGroupName "TestRG" -Name "Hub1"
      
    • 仮想 WAN を削除します。

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

次のステップ

次に、Virtual WAN についてさらに学習するには、「Virtual WAN の FAQ」を参照してください。