ExpressRoute を使用してオンプレミス ネットワークを拡張する

Azure ExpressRoute
Azure Virtual Network
Azure Virtual Machines

この参照アーキテクチャでは、Azure ExpressRoute を使用して、オンプレミス ネットワークを Azure の仮想ネットワークに接続する方法を示します。 ExpressRoute 接続は、サード パーティ製接続プロバイダーを経由する、プライベートの専用接続を使用します。 プライベート接続は、ご利用のオンプレミス ネットワークを Azure に拡張します。

Architecture

0

このアーキテクチャの Visio ファイルをダウンロードします。

ワークフロー

アーキテクチャは、次のコンポーネントで構成されます。

  • オンプレミスの企業ネットワーク。 組織内で運用されているプライベートのローカル エリア ネットワーク。

  • ExpressRoute 回線。 エッジ ルーターを介してオンプレミス ネットワークを Azure につなげる、レイヤー 2 またはレイヤー 3 の回線 (接続プロバイダーから提供されます)。 この回線では、接続プロバイダーによって管理されるハードウェア インフラストラクチャが使用されます。

  • ローカルのエッジ ルーター。 オンプレミス ネットワークを、プロバイダーによって管理されている回線に接続するルーター。 接続のプロビジョニング方法によっては、ルーターが使用するパブリック IP アドレスを指定しなければならない可能性があります。

  • Microsoft エッジ ルーター。 アクティブ/アクティブの高可用性構成の 2 つのルーター。 このルーターにより、接続プロバイダーが、その回線をデータセンターに直接接続できます。 接続のプロビジョニング方法によっては、ルーターが使用するパブリック IP アドレスを指定しなければならない可能性があります。

  • Azure 仮想ネットワーク (VNet) 。 各 VNet は 1 つの Azure リージョンに配置され、複数のアプリケーション層をホストできます。 アプリケーション層は、各 VNet 内でサブネットを使用してセグメント化できます。

  • Azure パブリック サービス。 ハイブリッド アプリケーションで使用できる Azure サービス。 このサービスはインターネット経由でも使用できますが、ExpressRoute 回線を使用してアクセスすると、トラフィックがインターネットを経由しないため、待ち時間が短縮され、パフォーマンスの予測可能性が向上します。

  • Microsoft 365 サービス。 公開されている、Microsoft 提供の Microsoft 365 アプリケーションとサービス。 Microsoft ピアリングを使用して接続が実行され、アドレスは、組織が所有するか、接続プロバイダーによって提供されます。 また、Microsoft ピアリングを介して、Microsoft CRM Online に直接接続することもできます。

  • 接続プロバイダー (非表示)。 レイヤー 2 またはレイヤー 3 の接続を使用して、ご利用のデータセンターと Azure データセンターの間に接続を提供する企業。

コンポーネント

  • Azure ExpressRoute。 ExpressRoute を利用すると、接続プロバイダーが提供するプライベート接続を介して、オンプレミスのネットワークを Microsoft クラウドに拡張できます。 ExpressRoute では、Microsoft Azure、Microsoft 365 などの Microsoft クラウド サービスへの接続を確立できます。

  • Azure Virtual Network。 Azure Virtual Network (VNet) は、Azure 内のプライベート ネットワークの基本的な構成要素です。 VNet により、Azure Virtual Machines (VM) などのさまざまな種類の Azure リソースが、他の Azure リソース、インターネット、およびオンプレミスのネットワークと安全に通信することができます。

Recommendations

ほとんどのシナリオには、次の推奨事項が適用されます。 これらの推奨事項には、オーバーライドする特定の要件がない限り、従ってください。

接続プロバイダー

自分の場所に適した ExpressRoute 接続プロバイダーを選択します。 自分の場所で使用できる接続プロバイダーの一覧を取得するには、次の Azure PowerShell コマンドを使用します。

Get-AzExpressRouteServiceProvider

ExpressRoute 接続プロバイダーは、ご利用のデータセンターを次の方法で Microsoft に接続します。

  • クラウド エクスチェンジにコロケーションされている。 クラウド エクスチェンジがある施設に併置されている場合、併置プロバイダーのイーサネット エクスチェンジ経由で Azure に仮想交差接続を要請できます。 併置プロバイダーは、共有施設のインフラストラクチャと Azure の間に、レイヤー 2 交差接続と管理レイヤー 3 交差接続のいずれかを提供します。
  • ポイント ツー ポイントのイーサネット接続。 オンプレミス データセンター/オフィスと Azure をポイント ツー ポイントのイーサネット リンクで接続できます。 ポイント ツー ポイントのイーサネットのプロバイダーは、サイトと Azure の間にレイヤー 2 接続と管理レイヤー 3 接続のいずれかを提供できます。
  • 任意の環境間 (IPVPN) ネットワーク。 ワイド エリア ネットワーク (WAN) を Azure と統合できます。 インターネット プロトコル仮想プライベート ネットワーク (IPVPN) プロバイダー (通常、マルチプロトコル ラベル スイッチング VPN) は、ブランチ オフィスとデータセンターの間に任意の環境間の接続を提供します。 Azure をご使用の WAN に相互接続し、ブランチ オフィスのように見せることができます。 通常、WAN プロバイダーは管理レイヤー 3 接続を提供します。

接続プロバイダーの詳細については、ExpressRoute の概要に関するページをご覧ください。

ExpressRoute 回線

Azure に接続するための ExpressRoute 前提条件を確実に組織が満たすようにします。

GatewaySubnet という名前のサブネットを Azure VNet にまだ追加していない場合は追加し、Azure VPN ゲートウェイ サービスを使用して、ExpressRoute 仮想ネットワーク ゲートウェイを作成します。 このプロセスの詳細については、「回線のプロビジョニングと回線の状態の ExpressRoute ワークフロー」を参照してください。

次のように、ExpressRoute 回線を作成します。

  1. 次の PowerShell コマンドを実行します。

    New-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>> -Location <<location>> -SkuTier <<sku-tier>> -SkuFamily <<sku-family>> -ServiceProviderName <<service-provider-name>> -PeeringLocation <<peering-location>> -BandwidthInMbps <<bandwidth-in-mbps>>
    
  2. 新しい回線の ServiceKey をサービス プロバイダーに送信します。

  3. プロバイダーによって回線がプロビジョニングされるのを待ちます。 回線のプロビジョニング状態を確認するには、次の PowerShell コマンドを実行します。

    Get-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>>
    

    回線の準備ができたら、出力の Service Provider セクションの Provisioning state フィールドが NotProvisioned から Provisioned に変わります。

    注意

    レイヤー 3 接続を使用している場合、ルーティングはプロバイダーによって構成および管理されます。 プロバイダーが適切なルートを実装できるように、必要な情報を提供します。

  4. レイヤー 2 接続を使用している場合:

    1. 実装するピアリングの種類ごとに、有効なパブリック IP アドレスで構成される 2 つの /30 サブネットを予約します。 これらの /30 サブネットは、回線で使用されるルーターに IP アドレスを提供するために使用されます。 プライベート ピアリングおよび Microsoft ピアリングを実装する場合は、有効なパブリック IP アドレスを持つ 4 つの /30 サブネットが必要になります。

    2. ExpressRoute 回線用のルーティングを構成します。 構成するピアリングの種類 (プライベートおよび Microsoft) ごとに、次の PowerShell コマンドを実行します。 詳細については、ExpressRoute 回線のルーティングの作成と変更に関するページをご覧ください。

      Set-AzExpressRouteCircuitPeeringConfig -Name <<peering-name>> -ExpressRouteCircuit <<circuit-name>> -PeeringType <<peering-type>> -PeerASN <<peer-asn>> -PrimaryPeerAddressPrefix <<primary-peer-address-prefix>> -SecondaryPeerAddressPrefix <<secondary-peer-address-prefix>> -VlanId <<vlan-id>>
      
      Set-AzExpressRouteCircuit -ExpressRouteCircuit <<circuit-name>>
      
    3. Microsoft ピアリングのネットワーク アドレス変換 (NAT) で使用するために、有効なパブリック IP アドレスのプールをもう 1 つ予約します。 ピアリングごとに異なるプールを指定することをお勧めします。 接続プロバイダーに対してそのプールを指定します。これにより、プロバイダーはこれらの範囲の境界ゲートウェイ プロトコル (BGP) アドバタイズを構成できます。

  5. 次の PowerShell コマンドを実行して、プライベート VNet を ExpressRoute 回線にリンクします。 詳細については、ExpressRoute 回線への仮想ネットワークのリンクに関するページをご覧ください。

    $circuit = Get-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>>
    $gw = Get-AzVirtualNetworkGateway -Name <<gateway-name>> -ResourceGroupName <<resource-group>>
    New-AzVirtualNetworkGatewayConnection -Name <<connection-name>> -ResourceGroupName <<resource-group>> -Location <<location> -VirtualNetworkGateway1 $gw -PeerId $circuit.Id -ConnectionType ExpressRoute
    

すべての VNet と ExpressRoute 回線が、同じ地政学的リージョンに配置されている場合は、さまざまなリージョンにある複数の VNet を同じ ExpressRoute 回線に接続できます。

トラブルシューティング

オンプレミスまたはプライベート VNet 内で構成を変更していないにもかかわらず、以前に機能していた ExpressRoute 回線が接続できなくなった場合、接続プロバイダーに連絡し、協力して問題解決にあたらなければならない可能性があります。 次の PowerShell コマンドを実行して、ExpressRoute 回線がプロビジョニングされていることを確認します。

Get-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>>

以下のように、このコマンドの出力には、ProvisioningStateCircuitProvisioningStateServiceProviderProvisioningState など、回線のプロパティがいくつか示されます。

ProvisioningState                : Succeeded
Sku                              : {
                                     "Name": "Standard_MeteredData",
                                     "Tier": "Standard",
                                     "Family": "MeteredData"
                                   }
CircuitProvisioningState         : Enabled
ServiceProviderProvisioningState : NotProvisioned

新しい回線を作成しようとした後に、ProvisioningStateSucceeded に設定されていない場合は、次のコマンドを使用して回線を削除し、もう一度作成してみてください。

Remove-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>>

プロバイダーによって既に回線がプロビジョニング済みであるのに、ProvisioningStateFailed に設定されているか、CircuitProvisioningStateEnabled でない場合は、対処方法についてプロバイダーにお問い合わせください。

考慮事項

以降の考慮事項には、ワークロードの品質向上に使用できる一連の基本原則である Azure "Well-Architected Framework" の要素が組み込まれています。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

スケーラビリティ

ExpressRoute 回線が提供するのは、ネットワーク間の高帯域幅のパスです。 一般的に、高帯域幅であるほど、コストが高くなります。

ExpressRoute には、従量制課金プランと無制限データ プランの 2 つの価格プランが用意されています。 料金は、回線の帯域幅によって異なります。 使用できる帯域幅は、プロバイダーによって異なる可能性があります。 Get-AzExpressRouteServiceProvider コマンドレットを使用すると、リージョンで使用できるプロバイダーと、そのプロバイダーが提供する帯域幅を確認できます。

1 つの ExpressRoute 回線が、特定の数のピアリングと VNet リンクをサポートします。 詳細については、ExpressRoute の制限に関するページをご覧ください。

追加料金を支払うことで、ExpressRoute Premium アドオンでいくつかの追加機能を利用できます。

  • プライベート ピアリングのルート制限の増加。
  • ExpressRoute 回線あたりの VNet リンク数の増加。
  • サービスのグローバル接続。

詳細については、「ExpressRoute の価格」を参照してください。

ExpressRoute 回線は、購入した帯域幅制限の 2 倍までの一時的ネットワーク バーストを無料で許容できるように設計されています。 これは、冗長なリンクを使用することで実現します。 ただし、すべての接続プロバイダーが、この機能をサポートしているわけではありません。 この機能を使用する前に、接続プロバイダーによってこの機能が有効になっていることを確認してください。

プロバイダーによっては帯域幅を変更できる場合もありますが、必ずニーズを上回る初期帯域幅を選択し、拡大に対応できるだけの余地を確保してください。 今後、帯域幅を増やす必要が出てきたとき、選択できるオプションは 2 つあります。

  • 帯域幅を増やします。 このオプションはできるだけ避けてください。一部のプロバイダーでは、帯域幅を動的に拡大できません。 それでも帯域幅を拡大する必要がある場合は、プロバイダーに連絡して、PowerShell コマンドによる ExpressRoute 帯域幅プロパティの変更をサポートしていることを確認します。 対応している場合は、次のコマンドを実行します。

    $ckt = Get-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>>
    $ckt.ServiceProviderProperties.BandwidthInMbps = <<bandwidth-in-mbps>>
    Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
    

    接続状態を維持したまま帯域幅を増やすことができます。 帯域幅をダウン グレードすると、接続が中断されます。これは、回線を削除し、新しい構成で再作成する必要があるためです。

  • 価格プランを変更するか、Premium にアップグレードします。 これを行うには、次のコマンドを実行します。 Sku.Tier プロパティには Standard または Premium を指定できます。Sku.Name プロパティには MeteredData または UnlimitedData を指定できます。

    $ckt = Get-AzExpressRouteCircuit -Name <<circuit-name>> -ResourceGroupName <<resource-group>>
    
    $ckt.Sku.Tier = "Premium"
    $ckt.Sku.Family = "MeteredData"
    $ckt.Sku.Name = "Premium_MeteredData"
    
    Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
    

    重要

    Sku.Name プロパティが Sku.Tier および Sku.Family と一致することを確認します。 ファミリとレベルを変更しても、名前を変更しないと、接続が無効になります。

    SKU は中断なしでアップグレードできますが、無制限の価格プランを従量制課金に切り替えることはできません。 SKU をダウングレードする場合、帯域幅の消費は、標準 SKU の既定の制限内に維持する必要があります。

可用性

ExpressRoute では、高可用性を実装するための、ホット スタンバイ ルーティング プロトコル (HSRP) や仮想ルーター冗長性プロトコル (VRRP) などのルーター冗長性プロトコルがサポートされていません。 代わりに、ピアリングごとに BGP セッションの冗長ペアが使用されます。 ネットワークへの高可用性接続を容易にするために、Azure では、アクティブ/アクティブ構成の 2 つのルーター (Microsoft Edge の一部) に 2 つの冗長ポートがプロビジョニングされます。

既定では、BGP セッションでは、60 秒のアイドル タイムアウト値を使用します。 セッションが 3 回 (合計 180 秒) タイムアウトすると、ルーターは利用不可とマークされ、すべてのトラフィックが残りのルーターにリダイレクトされます。 この 180 秒のタイムアウトは、クリティカルなアプリケーションにとっては長すぎる可能性があります。 その場合は、オンプレミスのルーターで、BGP のタイムアウト設定をより小さな値に変更できます。 ExpressRoute では、プライベート ピアリング経由の Bidirectional Forwarding Detection (BFD) もサポートしています。 ExpressRoute 経由の BFD を有効にすると、Microsoft Enterprise Edge (MSEE) デバイスと ExpressRoute 回線が終端するルーター (PE) の間のリンク障害の検出を迅速化できます。 顧客のエッジ ルーティング デバイスまたはパートナーのエッジ ルーティング デバイス経由の ExpressRoute を終端できます (マネージド レイヤー 3 接続サービスを選択した場合)。

Azure 接続の高可用性は、ご使用のプロバイダーの種類と、構成する ExpressRoute 回線および仮想ネットワーク ゲートウェイ接続の数に応じて、さまざまな方法で構成できます。 可用性オプションを次にまとめます。

  • レイヤー 2 接続を使用している場合は、アクティブ/アクティブ構成でオンプレミス ネットワークに冗長ルーターを配置します。 プライマリ回線を一方のルーターに接続し、セカンダリ回線をもう一方に接続します。 これにより、接続の両端で高可用性接続が実現します。 これが必要なのは、ExpressRoute サービス レベル アグリーメント (SLA) を必要とする場合です。 詳細については、Azure ExpressRoute の SLA に関するページをご覧ください。

    次の図は、冗長オンプレミス ルーターがプライマリ回線とセカンダリ回線に接続されている構成を示しています。 各回線によってプライベート ピアリングのトラフィックが処理されます (前のセクションで説明したように、各ピアリングに /30 アドレス空間のペアが指定されています)。

    1

  • レイヤー 3 接続を使用している場合は、自動的に可用性を処理する冗長 BGP セッションが提供されていることを確認します。

  • VNet を、さまざまなサービス プロバイダーによって提供される、複数の ExpressRoute 回線に接続します。 この戦略により、追加の高可用性機能と、ディザスター リカバリー機能が提供されます。

  • ExpressRoute のフェールオーバー パスとしてサイト間 VPN を構成します。 このオプションの詳細については、「VPN フェールオーバー付きの ExpressRoute を使用してオンプレミス ネットワークを Azure に接続する」を参照してください。 このオプションは、プライベート ピアリングにのみ適用されます。 Azure と Microsoft 365 サービスについては、インターネットが唯一のフェールオーバー パスです。

セキュリティ

セキュリティは、重要なデータやシステムの意図的な攻撃や悪用に対する保証を提供します。 詳細については、「セキュリティの重要な要素の概要」を参照してください。

Azure 接続のセキュリティ オプションは、セキュリティ上の懸念事項とコンプライアンス ニーズに応じて、さまざまな方法で構成できます。

ExpressRoute はレイヤー 3 で動作します。 アプリケーション レイヤーの脅威を防止するには、トラフィックを正当なリソースに制限するネットワーク セキュリティ アプライアンスを使用します。

セキュリティを最大限に高めるには、オンプレミス ネットワークとプロバイダー エッジ ルーターの間に、ネットワーク セキュリティ アプライアンスを追加します。 これは、VNet から未承認トラフィックが流れ込んでくるのを制限するうえで役立ちます。

2

監査やコンプライアンスの目的で、VNet で実行されているコンポーネントからインターネットへの直接アクセスを禁止し、強制トンネリングを実装しなければならない場合があります。 このような場合は、インターネット トラフィックを、オンプレミスで実行されているプロキシを介してリダイレクトし、監査できるようにする必要があります。 プロキシは、承認されていないトラフィックが流出するのをブロックし、悪意のある可能性がある受信トラフィックをフィルター処理するように構成できます。

3

セキュリティを最大限に高めるためには、VM のパブリック IP アドレスは有効にしないでください。また、NSG を使用して、こうした VM にはパブリックにアクセスできないようにします。 VM は、内部 IP アドレスでのみ使用できるようにします。 こうしたアドレスは ExpressRoute ネットワークを介してアクセス可能にできます。これにより、オンプレミスの DevOps スタッフが、構成やメンテナンスを行うことができます。

VM の管理エンドポイントを外部ネットワークに公開する必要がある場合は、NSG またはアクセス制御リストを使用して、こうしたポートの可視性を、IP アドレスまたはネットワークの許可リストに制限します。

注意

Azure portal でデプロイされた Azure VM には、ログイン アクセスを提供するパブリック IP アドレスを含めることができます。 ただし、ベスト プラクティスではこれを許可しません。

ネットワーク監視

Network Watcher を使用して、ネットワーク コンポーネントの監視およびトラブルシューティングを行います。Traffic Analytics などのツールには、仮想ネットワークで多くのトラフィックを生成しているシステムが表示されるため、ボトルネックを視覚的に特定して問題を事前に食い止めることができます。 Network Performance Manager には、Microsoft ExpressRoute 回線の情報を監視する機能があります。

Azure Connectivity Toolkit (AzureCT) を使用して、オンプレミスのデータセンターと Azure の間の接続を監視することもできます。

詳細については、「Microsoft Azure Well-Architected Framework」の DevOps のセクションを参照してください。 監視に固有の情報については、「DevOps の監視」を参照してください。

コスト最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳しくは、コスト最適化の柱の概要に関する記事をご覧ください。

コストの見積もりには、Azure 料金計算ツールをご利用ください。

次のセクションでは、このアーキテクチャで使用されるサービス料金について説明します。

Azure ExpressRoute

このアーキテクチャでは、ExpressRoute 回線を使用して、エッジ ルーターを介してオンプレミス ネットワークを Azure につなげます。

主なプランは 2 つあります。 従量制課金接続プランでは、受信データ転送はすべて無料です。 送信データ転送はすべて、事前に決められた料金に基づいて課金されます。

無制限データ プランを選択して、すべての受信および送信データ転送を無料にすることもできます。 ユーザーには、高可用性デュアル ポートに基づいて月額固定料金が課金されます。

ご自身の使用率を計算し、それに応じてお支払いプランを選択してください。 使用率が約 68% を超える場合は、無制限データ プランをお勧めします。

詳細については、「Azure ExpressRoute の価格」をご覧ください。

Azure Virtual Network

すべてのアプリケーション層が 1 つの仮想ネットワークでホストされ、サブネットを使用してセグメント化されます。

Azure Virtual Network は無料です。 すべてのサブスクリプションで、すべてのリージョンで最大 50 の仮想ネットワークを作成できます。 仮想ネットワークの境界内で発信されたトラフィックはすべて無料です。 そのため、同じ仮想ネットワーク内の2つの VM 間の通信は無料です。

次のステップ

製品ドキュメント:

Microsoft Learn モジュール: