ExpressRoute Global Reach を構成するConfigure ExpressRoute Global Reach

この記事は、PowerShell を使用して ExpressRoute Global Reach を構成する際に役立ちます。This article helps you configure ExpressRoute Global Reach using PowerShell. 詳細については、ExpressRouteRoute Global Reach に関するページを参照してください。For more information, see ExpressRouteRoute Global Reach.

開始する前にBefore you begin

構成を開始する前に、次のことを確認してください。Before you start configuration, confirm the following:

  • ExpressRoute 回線のプロビジョニング ワークフローを理解していること。You understand ExpressRoute circuit provisioning workflows.
  • ExpressRoute 回線がプロビジョニングされた状態にあること。Your ExpressRoute circuits are in a provisioned state.
  • ExpressRoute 回線上に Azure プライベート ピアリングが構成されていること。Azure private peering is configured on your ExpressRoute circuits.
  • PowerShell をローカルで実行する場合は、Azure PowerShell の最新バージョンがコンピューターにインストールされていることを確認します。If you want to run PowerShell locally, verify that the latest version of Azure PowerShell is installed on your computer.

Azure PowerShell を使用するWorking with Azure PowerShell

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

この記事では、PowerShell コマンドレットを使用します。This article uses PowerShell cmdlets. コマンドレットを実行するには、Azure Cloud Shell を使用できます。To run the cmdlets, you can use Azure Cloud Shell. Azure Cloud Shell は、無料の対話型シェルで、一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。Azure Cloud Shell is a free interactive shell that has common Azure tools preinstalled and is configured to use with your account. [コピー] をクリックしてコードをコピーし、Cloud Shell に貼り付けて Enter キーを押すだけで、コードを実行することができます。Just click the Copy to copy the code, paste it into the Cloud Shell, and then press enter to run it. Cloud Shell は、次のようにいくつかの方法で起動することができます。There are a few ways to launch the Cloud Shell:

コード ブロックの右上隅にある [使ってみる] をクリックします。Click Try It in the upper right corner of a code block. この記事の Cloud Shell
ブラウザーで Cloud Shell を開きます。Open Cloud Shell in your browser. https://shell.azure.com/powershell
Azure Portal の右上のメニューの [Cloud Shell] ボタンをクリックします。Click the Cloud Shell button on the menu in the upper right of the Azure portal. ポータルの Cloud ShellCloud Shell in the portal

ローカルでの PowerShell の実行Running PowerShell locally

Azure PowerShell コマンドレットは、ローカルのコンピューターにインストールして実行することもできます。You can also install and run the Azure PowerShell cmdlets locally on your computer. PowerShell コマンドレットは、頻繁に更新されます。PowerShell cmdlets are updated frequently. 最新バージョンを実行していないと、手順で指定されている値は失敗する場合があります。If you are not running the latest version, the values specified in the instructions may fail. ローカルで実行している PowerShell のバージョンを確認するには、Get-Module -ListAvailable Az コマンドレットを使用します。To find the version of PowerShell that you are running locally, use the Get-Module -ListAvailable Az cmdlet. インストールまたは更新するには、「Install the Azure PowerShell module (Azure PowerShell モジュールのインストール)」を参照してください。To install or update, see Install the Azure PowerShell module.

回線を特定するIdentify circuits

  1. 構成を開始するには、Azure アカウントにサインインし、使用するサブスクリプションを選択します。To start the configuration, sign in to your Azure account and select the subscription that you want to use.

    Azure Cloud Shell を使用している場合は、[試してみる] をクリックすると、Azure アカウントに自動的にサインインします。If you are using the Azure Cloud Shell, you sign in to your Azure account automatically after clicking 'Try it'. ローカルにサインインするには、昇格された特権で PowerShell コンソールを開き、コマンドレットを実行して接続します。To sign in locally, open your PowerShell console with elevated privileges and run the cmdlet to connect.

    Connect-AzAccount
    

    複数のサブスクリプションがある場合は、Azure サブスクリプションの一覧を取得します。If you have more than one subscription, get a list of your Azure subscriptions.

    Get-AzSubscription
    

    使用するサブスクリプションを指定します。Specify the subscription that you want to use.

    Select-AzSubscription -SubscriptionName "Name of subscription"
    
  2. 使用する ExpressRoute 回線を特定します。Identify the ExpressRoute circuits that you want use. 任意の 2 つの ExpressRoute 回線間で ExpressRoute Global Reach を有効にすることができるのは、それらがサポートされている国や地域に配置され、かつ異なるピアリングの場所で作成されている場合だけです。You can enable ExpressRoute Global Reach between any two ExpressRoute circuits as long as they're located in the supported countries/regions and were created at different peering locations.

    • サブスクリプションが両方の回線を所有している場合は、以降のセクションで構成を実行するために、どちらかの回線を選択できます。If your subscription owns both circuits, you can choose either circuit to run the configuration in the following sections.
    • 2 つの回線が異なる Azure サブスクリプションに含まれている場合は、1 つの Azure サブスクリプションからの承認が必要です。If the two circuits are in different Azure subscriptions, you need authorization from one Azure subscription. その後、もう一方の Azure サブスクリプションで構成コマンドを実行するときに承認キーを渡します。Then you pass in the authorization key when you run the configuration command in the other Azure subscription.

接続性の確保Enable connectivity

オンプレミス ネットワーク間の接続を有効にします。Enable connectivity between your on-premises networks. 同じ Azure サブスクリプション内にある回線と、異なるサブスクリプションである回線には、異なるセットの手順があります。There are separate sets of instructions for circuits that are in the same Azure subscription, and circuits that are different subscriptions.

同じ Azure サブスクリプション内の ExpressRoute 回線ExpressRoute circuits in the same Azure subscription

  1. 次のコマンドを使用して回線 1 と回線 2 を取得します。Use the following commands to get circuit 1 and circuit 2. 2 つの回線は同じサブスクリプションにあります。The two circuits are in the same subscription.

    $ckt_1 = Get-AzExpressRouteCircuit -Name "Your_circuit_1_name" -ResourceGroupName "Your_resource_group"
    $ckt_2 = Get-AzExpressRouteCircuit -Name "Your_circuit_2_name" -ResourceGroupName "Your_resource_group"
    
  2. 回線 1 に対して次のコマンドを実行し、回線 2 のプライベート ピアリング ID を渡します。Run the following command against circuit 1, and pass in the private peering ID of circuit 2. このコマンドを実行するときは、次のことに注意してください。When running the command, note the following:

    • プライベート ピアリング ID は、次の例のようになります。The private peering ID looks similar to the following example:

      /subscriptions/{your_subscription_id}/resourceGroups/{your_resource_group}/providers/Microsoft.Network/expressRouteCircuits/{your_circuit_name}/peerings/AzurePrivatePeering
      
    • -AddressPrefix は、/29 IPv4 サブネット ("10.0.0.0/29" など) である必要があります。-AddressPrefix must be a /29 IPv4 subnet, for example, "10.0.0.0/29". このサブネット内の IP アドレスを使用して、2 つの ExpressRoute 回線間の接続を確立します。We use IP addresses in this subnet to establish connectivity between the two ExpressRoute circuits. このサブネット内のアドレスを Azure 仮想ネットワークやオンプレミス ネットワークでは使用しないでください。You shouldn’t use the addresses in this subnet in your Azure virtual networks, or in your on-premises network.

      Add-AzExpressRouteCircuitConnectionConfig -Name 'Your_connection_name' -ExpressRouteCircuit $ckt_1 -PeerExpressRouteCircuitPeering $ckt_2.Peerings[0].Id -AddressPrefix '__.__.__.__/29'
      
  3. 回線 1 上の構成を次のように保存します。Save the configuration on circuit 1 as follows:

    Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt_1
    

前の操作が完了したら、2 つの ExpressRoute 回線を介して、オンプレミス ネットワーク間の接続を両側で行います。When the previous operation completes, you will have connectivity between your on-premises networks on both sides through your two ExpressRoute circuits.

異なる Azure サブスクリプションの ExpressRoute 回線ExpressRoute circuits in different Azure subscriptions

2 つの回線が同じ Azure サブスクリプション内にない場合は、承認が必要です。If the two circuits are not in the same Azure subscription, you need authorization. 次の構成では、回線 2 のサブスクリプション内に承認が生成され、その承認キーが回線 1 に渡されます。In the following configuration, authorization is generated in the circuit 2 subscription, and the authorization key is passed to circuit 1.

  1. 承認キーを生成します。Generate an authorization key.

    $ckt_2 = Get-AzExpressRouteCircuit -Name "Your_circuit_2_name" -ResourceGroupName "Your_resource_group"
    Add-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $ckt_2 -Name "Name_for_auth_key"
    Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt_2
    

    回線 2 のプライベート ピアリング ID と承認キーを書きとめます。Make a note of the private peering ID of circuit 2, as well as the authorization key.

  2. 回線 1 に対して次のコマンドを実行します。Run the following command against circuit 1. 回線 2 のプライベート ピアリング ID と承認キーを渡します。Pass in the private peering ID of circuit 2 and the authorization key.

    Add-AzExpressRouteCircuitConnectionConfig -Name 'Your_connection_name' -ExpressRouteCircuit $ckt_1 -PeerExpressRouteCircuitPeering "circuit_2_private_peering_id" -AddressPrefix '__.__.__.__/29' -AuthorizationKey '########-####-####-####-############'
    
  3. この構成は回線 1 に保存します。Save the configuration on circuit 1.

    Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt_1
    

前の操作が完了したら、2 つの ExpressRoute 回線を介して、オンプレミス ネットワーク間の接続を両側で行います。When the previous operation completes, you will have connectivity between your on-premises networks on both sides through your two ExpressRoute circuits.

構成を確認するVerify the configuration

構成が作成された回線 (たとえば、前の例では回線 1) 上の構成を確認するには、次のコマンドを使用します。Use the following command to verify the configuration on the circuit where the configuration was made (for example, circuit 1 in the previous example).

$ckt1 = Get-AzExpressRouteCircuit -Name "Your_circuit_1_name" -ResourceGroupName "Your_resource_group"

単純に PowerShell で $ckt1 を実行すると、出力に CircuitConnectionStatus が表示されます。If you simply run $ckt1 in PowerShell, you see CircuitConnectionStatus in the output. これは、接続が確立されているかどうか、つまり "Connected" または "Disconnected" を通知します。It tells you whether the connectivity is established, "Connected", or "Disconnected".

接続の無効化Disable connectivity

オンプレミス ネットワーク間での接続を無効にするには、構成が作成された回線 (たとえば、前の例では回線 1) に対してコマンドを実行します。To disable connectivity between your on-premises networks, run the commands against the circuit where the configuration was made (for example, circuit 1 in the previous example).

$ckt1 = Get-AzExpressRouteCircuit -Name "Your_circuit_1_name" -ResourceGroupName "Your_resource_group"
Remove-AzExpressRouteCircuitConnectionConfig -Name "Your_connection_name" -ExpressRouteCircuit $ckt_1
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt_1

Get 操作を実行して状態を確認できます。You can run the Get operation to verify the status.

前の操作が完了すると、ExpressRoute 回線を経由したオンプレミス ネットワーク間の接続は存在しなくなります。After the previous operation is complete, you no longer have connectivity between your on-premises network through your ExpressRoute circuits.

次の手順Next steps

  1. ExpressRoute Global Reach について詳しく学習するLearn more about ExpressRoute Global Reach
  2. ExpressRoute 接続を確認するVerify ExpressRoute connectivity
  3. ExpressRoute 回線を Azure 仮想ネットワークにリンクするLink an ExpressRoute circuit to an Azure virtual network