ピア VPN ゲートウェイへの HA VPN ゲートウェイの作成

このページでは、ピア VPN ゲートウェイに接続する高可用性 VPN ゲートウェイの作成方法について説明します。

HA VPN ゲートウェイは HA VPN API を使用し、99.99% の SLA を実現します。この構成では、HA VPN ゲートウェイ インターフェースごとに 1 つのトンネルを持つトンネルペアを使用します。99.99% の SLA を受けるには、両方の HA VPN ゲートウェイ インターフェースで VPN トンネルを構成する必要があります。

HA VPN 用に構成するゲートウェイ コンポーネントは 2 つあります。

  • Google Cloud の HA VPN ゲートウェイ
  • ピア VPN ゲートウェイ。HA VPN ゲートウェイが接続するピア ネットワーク内の 1 つ以上の物理 VPN ゲートウェイ デバイスまたはソフトウェア アプリケーションです。ピア ゲートウェイは、オンプレミス VPN ゲートウェイまたは他のクラウド プロバイダにホストされているゲートウェイです。

    ピア ゲートウェイ デバイスまたはサービスごとに Google Cloud の外部 VPN ゲートウェイ リソースを作成します。Google Cloud では、ピア ゲートウェイのシナリオはすべて 1 つの外部ピア VPN リソースとして表現されます。

Cloud VPN の詳細については、次のリソースをご覧ください。

Cloud Interconnect を介した HA VPN をデプロイする場合は、Cloud Interconnect を介した HA VPN の概要をご覧ください。

要件

冗長性タイプ

HA VPN API には REDUNDANCY_TYPE のオプションがあり、外部 VPN ゲートウェイ リソース用に構成するインターフェースの数を表します。

外部 VPN ゲートウェイ リソースを構成すると、gcloud コマンドは、インターフェース ID に指定したインターフェースの数から、REDUNDANCY_TYPE の次の値を自動的に推測します。

  • 外部 VPN インターフェースが 1 つの場合は SINGLE_IP_INTERNALLY_REDUNDANT です。
  • 外部 VPN インターフェースが 2 つの場合は TWO_IPS_REDUNDANCY です。
  • 外部 VPN インターフェースが 4 つの場合は FOUR_IPS_REDUNDANCY です。

外部 VPN ゲートウェイを構成する際は、外部 VPN インターフェースの数に応じて次のインターフェース識別番号を使用します。

  • 外部 VPN インターフェースが 1 つの場合は、0 の値を使用します。
  • 外部 VPN インターフェースが 2 つの場合は、01 の値を使用します。
  • 外部 VPN インターフェースが 4 つの場合は、0123 の値を使用します。

Cloud Router を作成する

新しい HA VPN ゲートウェイを構成するときに、新しい Cloud Router を作成するか、既存の Cloud VPN トンネルまたは VLAN アタッチメントですでに使用している Cloud Router を使用できます。ただし、既存の Cloud Router を使用する場合は、アタッチメントの特定の ASN 要件により、この Cloud Router で Partner Interconnect 接続に関連付けられている VLAN アタッチメントの BGP セッションを管理していない必要があります。

始める前に

Google Cloud での動的ルーティングの仕組みを確認します。

ピア VPN ゲートウェイで Border Gateway Protocol(BGP)がサポートされていることを確認します。

Google Cloud で次の項目を設定すると、Cloud VPN を簡単に構成できます。

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Google Cloud CLI をインストールします。
  5. gcloud CLI を初期化するには:

    gcloud init
  6. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  7. Google Cloud プロジェクトで課金が有効になっていることを確認します

  8. Google Cloud CLI をインストールします。
  9. gcloud CLI を初期化するには:

    gcloud init
  1. Google Cloud CLI を使用している場合は、次のコマンドを使用してプロジェクト ID を設定します。このページの gcloud の説明では、コマンド発行前にプロジェクト ID を設定済みであることを前提としています。

        gcloud config set project PROJECT_ID
        
  1. 次のコマンドを実行して、すでに設定されているプロジェクト ID を表示することもできます。

        gcloud config list --format='text(core.project)'
        

カスタム VPC ネットワークとサブネットを作成する

HA VPN ゲートウェイとトンネルペアを作成する前に、HA VPN ゲートウェイが存在するリージョンに Virtual Private Cloud(VPC)ネットワークと少なくとも 1 つのサブネットを作成します。

HA VPN ゲートウェイで IPv6 を有効にするには、VPC の作成時に IPv6 内部アドレスの割り振りを有効にする必要があります。また、IPv6 内部アドレスを使用するようにサブネットを構成する必要があります。

サブネット内の VM でも IPv6 を構成する必要があります。

VPC サブネットは、内部 IPv6 アドレスを使用するように構成する必要があります。gcloud CLI を使用する場合は、--ipv6-access-type=INTERNAL フラグを使用してサブネットを構成します。Cloud Router は、外部 IPv6 アドレス(--ipv6-access-type=EXTERNAL)を使用するように構成されているサブネットのルートを動的にアドバタイズしません。

VPC ネットワークとサブネットで内部 IPv6 の範囲を使用する方法については、内部 IPv6 の仕様をご覧ください。

このドキュメントの例では、VPC グローバル ダイナミック ルーティング モードも使用しています。このモードは次のように動作します。

  • Cloud Router のすべてのインスタンスは、学習した to on-premises ルートを VPC ネットワーク内のすべてのサブネットに適用します。
  • VPC ネットワーク内のすべてのサブネットへのルートは、オンプレミス ルーターと共有されます。

ピア VPN への HA VPN ゲートウェイとトンネルペアを作成する

このセクションの手順に沿って、HA VPN ゲートウェイ、ピア VPN ゲートウェイ リソース、トンネルペア、BGP セッションを作成します。

HA VPN ゲートウェイを作成する

コンソール

VPN 設定ウィザードには、HA VPN ゲートウェイ、ピア VPN ゲートウェイ リソース、トンネル、BGP セッションの作成に必要なすべての構成手順が含まれています。

HA VPN ゲートウェイを作成するには、次の手順を行います。

  1. Google Cloud Console で、[VPN] ページに移動します。

    [VPN] に移動

  2. ゲートウェイを初めて作成する場合は、[VPN 接続を作成] をクリックします。

  3. [VPN 設定ウィザード] を選択します。

  4. 既存の HA VPN ゲートウェイがある場合は、そのゲートウェイのオプション ボタンを選択します。

  5. [続行] をクリックします。

  6. [VPN ゲートウェイ名] を指定します。

  7. [VPC ネットワーク] で、既存のネットワークまたはデフォルトのネットワークを選択します。

  8. リージョンを選択します。

  9. VPN ゲートウェイのスタックタイプを [IPv4(シングルスタック)] または [IPv4 と IPv6(デュアルスタック)] から選択します。

  10. [作成して続行] をクリックします。

  11. コンソール画面が更新され、ゲートウェイ情報が表示されます。ゲートウェイ インターフェースごとに 2 つの外部 IP アドレスが自動的に割り振られます。今後の構成手順のために、ゲートウェイ構成の詳細をメモします。

gcloud

HA VPN ゲートウェイを作成するには、次のコマンドを実行します。ゲートウェイが作成されると、2 つの外部 IP アドレスが自動的に割り振られます(各ゲートウェイ インターフェースに 1 つ)。

  • IPv4 ワークロードのみをサポートする場合は、IPV4_ONLY スタックタイプを使用して HA VPN ゲートウェイを作成します。
  • IPv4 と IPv6 の両方のワークロードをサポートする場合は、IPV4_IPV6 スタックタイプを使用して HA VPN ゲートウェイを作成します。
  • IPv6 ワークロードのみをサポートする場合は、IPV6_ONLY スタックタイプで HA VPN ゲートウェイを作成します。これはプレビュー版で、Google Cloud CLI または API でのみ使用可能です。

IPv4 インターフェースを使用する HA VPN ゲートウェイを作成するには、次のコマンドを実行します。ゲートウェイが作成されると、2 つの外部 IPv4 アドレスが自動的に割り振られます(各ゲートウェイ インターフェースに 1 つ)。

gcloud compute vpn-gateways create GW_NAME \
    --network=NETWORK \
    --region=REGION \
    --stack-type=IP_STACK

--gateway-ip-version=IPV4 を指定することもできます。ただし、このフラグは必須ではありません。このフラグを指定しない場合、HA VPN ゲートウェイはデフォルトで外部 IPv4 アドレスを使用します。

IPv6 インターフェースを使用する HA VPN ゲートウェイを作成するには、次のコマンドを実行します。ゲートウェイが作成されると、2 つの外部 IPv6 アドレスが自動的に割り振られます(各ゲートウェイ インターフェースに 1 つ)。

gcloud beta compute vpn-gateways create GW_NAME \
    --network=NETWORK \
    --region=REGION \
    --gateway-ip-version=IPV6 \
    --stack-type=IP_STACK

次のように置き換えます。

  • GW_NAME: ゲートウェイの名前
  • NETWORK: Google Cloud ネットワークの名前
  • REGION: ゲートウェイとトンネルを作成する Google Cloud リージョン
  • IP_STACK: 省略可。使用する IP スタック。IPV4_ONLYIPV4_IPV6、または IPV6_ONLYプレビュー版)のいずれかを指定します。IPv4 インターフェースを使用する HA VPN ゲートウェイの場合、このフラグを指定しないと、デフォルトのスタックタイプ IPV4_ONLY が使用されます。IPv6 インターフェースを使用するゲートウェイの場合は、IPV4_IPV6 になります。

作成するゲートウェイは、次の出力例のようになります。--gateway-ip-version=IPV6 を指定すると、IPv6 インターフェースが割り当てられます。それ以外の場合は、各ゲートウェイ インターフェースに外部 IPv4 アドレスが自動的に割り当てられます。

Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a].
NAME          INTERFACE0     INTERFACE1     NETWORK     REGION
ha-vpn-gw-a   203.0.113.16   203.0.113.23   network-a   us-central1

API

HA VPN ゲートウェイの完全な構成を作成するには、次のセクションの API コマンドを使用します。このセクションで使用されるすべてのフィールド値はサンプル値です。

HA VPN ゲートウェイを作成するには、vpnGateways.insert メソッドを使用して POST リクエストを行います。

   POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnGateways
   {
     "name": "ha-vpn-gw-a",
     "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-a",
     "stackType": "IPV4_IPV6",
     "gatewayIpVersion": "IPV4"
   }
   POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/vpnGateways
   {
     "name": "ha-vpn-gw-a",
     "network": "https://www.googleapis.com/compute/beta/projects/PROJECT_ID/global/networks/network-a",
     "gatewayIpVersion": "IPV6",
     "stackType": "IPV6_ONLY"
   }
  • IPv4 インターフェースを使用する HA VPN ゲートウェイを作成する場合、gatewayIpVersion フィールドと stackType フィールドは省略可能です。

    • gatewayIpVersion を指定しない場合、デフォルト値は IPV4 です。

    • gatewayIpVersionIPV4 のゲートウェイで有効な stackType 値は、IPV4_IPV6 または IPV4_ONLY のみです。

    stackType を指定しない場合、デフォルト値は IPV4_ONLY です。

  • HA VPN ゲートウェイに外部 IPv6 アドレスを割り振る場合は、gatewayIpVersion 値として IPV6 を指定する必要があります。stackType フィールドは省略可能です。

    • stackType を指定しない場合、デフォルト値は IPV4_IPV6 です。

    • gatewayIpVersionIPV6 のゲートウェイで有効な stackType 値は、IPV4_IPV6 または IPV6_ONLYプレビュー)のみです。

ピア VPN ゲートウェイ リソースを作成する

Console

ピア VPN ゲートウェイ リソースは、Google Cloud の Google Cloud 以外のゲートウェイを表します。

ピア VPN ゲートウェイ リソースを作成するには、次の手順を行います。

  1. [VPN の作成] ページの [ピア VPN ゲートウェイ] で、[オンプレミスまたは非 Google Cloud] を選択します。
  2. [ピア VPN ゲートウェイの名前] で既存のピア ゲートウェイを選択するか、[新しいピア VPN ゲートウェイを作成する] をクリックします。

    既存のゲートウェイを選択すると、Google Cloud コンソールは、既存のピア ゲートウェイで構成したピア インターフェースの数に基づいて、構成するトンネルの数を選択します。

    新しいピア ゲートウェイを作成するには、次の手順に沿って操作します。

    1. ピア VPN ゲートウェイの名前を指定します。
    2. [ピア VPN ゲートウェイ インターフェース] の下で、ピア ゲートウェイのインターフェースの種類に応じて、onetwo、または four を選択します。それぞれの種類の例については、トポロジのページをご覧ください。
    3. 各ピア VPN インターフェースのフィールドに、そのインターフェースに使用する外部 IP アドレスを指定します。詳細については、ピア VPN ゲートウェイを構成するをご覧ください。
    4. [作成] をクリックします。

gcloud

ピア VPN ゲートウェイに関する情報を Google Cloud に提供する外部 VPN ゲートウェイ リソースを作成します。ピア VPN ゲートウェイに関する高可用性の推奨事項に応じて、次の異なる種類のオンプレミス VPN ゲートウェイに外部 VPN ゲートウェイ リソースを作成できます。

  • 2 つのデバイスが互いに冗長で、各デバイスに独自の外部 IP アドレスがある、2 つの個別のピア VPN ゲートウェイ デバイス。
  • それぞれ独自の外部 IP アドレスを持つ 2 つの個別のインターフェースを使用する、単一のピア VPN ゲートウェイ。この種類のピア ゲートウェイでは、2 つのインターフェースを持つ単一の外部 VPN ゲートウェイを作成できます。
  • 単一の外部 IP アドレスを持つ単一のピア VPN ゲートウェイ。

オプション 1: 2 つの個別のピア VPN ゲートウェイ デバイスに 1 つの外部 VPN ゲートウェイ リソースを作成する

  • この種類のピア ゲートウェイでは、外部 VPN ゲートウェイの各インターフェースに 1 つの外部 IP アドレスがあり、各アドレスはいずれかのピア VPN ゲートウェイ デバイスからのものです。

    gcloud compute external-vpn-gateways create PEER_GW_NAME \
       --interfaces 0=PEER_GW_IP_0,1=PEER_GW_IP_1
    

    次のように置き換えます。

    • PEER_GW_NAME: ピア ゲートウェイを表す名前
    • PEER_GW_IP_0: 一方のピア ゲートウェイの外部 IP アドレス
    • PEER_GW_IP_1: もう一方のピア ゲートウェイの外部 IP アドレス

    作成した外部 VPN ゲートウェイ リソースは次の例のようになります。ここで PEER_GW_IP_0PEER_GW_IP_1 はピア ゲートウェイ インターフェースの実際の外部 IP アドレスを示します。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways/peer-gw].
    NAME      INTERFACE0    INTERFACE1
    peer-gw   PEER_GW_IP_0  PEER_GW_IP_1
    

オプション 2: 2 つの個別のインターフェースを持つ単一のピア VPN ゲートウェイに外部 VPN ゲートウェイ リソースを作成する

  • この種類のピア ゲートウェイでは、2 つのインターフェースを持つ単一の外部 VPN ゲートウェイを作成します。

    gcloud compute external-vpn-gateways create PEER_GW_NAME \
       --interfaces 0=PEER_GW_IP_0,1=PEER_GW_IP_1
    

    次のように置き換えます。

    • PEER_GW_NAME: ピア ゲートウェイを表す名前
    • PEER_GW_IP_0: ピア ゲートウェイの一方のインターフェースの外部 IP アドレス
    • PEER_GW_IP_1: ピア ゲートウェイのもう一方のインターフェースの外部 IP アドレス

    作成した外部 VPN ゲートウェイ リソースは次の例のようになります。ここで PEER_GW_IP_0PEER_GW_IP_1 はピア ゲートウェイ インターフェースの実際の外部 IP アドレスを示します。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways/peer-gw].
    NAME     INTERFACE0    INTERFACE1
    peer-gw  PEER_GW_IP_0  PEER_GW_IP_1
    

オプション 3: 単一の外部 IP アドレスを持つ単一のピア VPN ゲートウェイに外部 VPN ゲートウェイ リソースを作成する

  • この種類のピア ゲートウェイでは、1 つのインターフェースを持つ 1 つの外部 VPN ゲートウェイを作成します。

    gcloud compute external-vpn-gateways create PEER_GW_NAME \
       --interfaces 0=PEER_GW_IP_0
    

    次のように置き換えます。

    • PEER_GW_NAME: ピア ゲートウェイを表す名前
    • PEER_GW_IP_0: ピア ゲートウェイのインターフェースの外部 IP アドレス

    作成した外部 VPN ゲートウェイ リソースは次の例のようになります。ここで PEER_GW_IP_0 はピア ゲートウェイ インターフェースの実際の外部 IP アドレスを示します。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways/peer-gw].
    NAME       INTERFACE0
    peer-gw    PEER_GW_IP_0
    

API

外部 VPN ゲートウェイ リソースを作成するには、externalVpnGateways.insert メソッドを使用して POST リクエストを行います。

  • 1 つのインターフェースを持つ外部(ピア)VPN ゲートウェイの場合、以下の例を使用します。ただし、redundancyTypeSINGLE_IP_INTERNALLY_REDUNDANT のインターフェース ID と ipAddress をそれぞれ 1 つだけ指定します。
  • 1 つの外部 VPN ゲートウェイに 2 つのインターフェース、または 2 つの外部 VPN ゲートウェイにそれぞれ 1 つのインターフェースがある場合、TWO_IPS_REDUNDANCY の例を使用します。
  • Amazon Web Services(AWS)など、4 つの外部 VPN インターフェースを持つ外部 VPN ゲートウェイが 1 つ以上ある場合、次の例を使用します。ただし、4 つのインターフェース ID と ipAddress のインスタンスを指定して FOUR_IPS_REDUNDANCYredundancyType を使用します。

     POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways
     {
       "name": "my-peer-gateway",
       "interfaces": [
         {
           "id": 0,
           "ipAddress": "192.0.2.1"
         },
         {
           "id": 1,
           "ipAddress": "192.0.2.2"
         }
       ],
       "redundancyType": "TWO_IPS_REDUNDANCY"
     }
    

Cloud Router の作成

Console

まだ作成していない場合は、[Cloud Router] の下で、次のオプションを指定して Cloud Router を作成します。Cloud NAT に使用されていない限り、既存の Cloud Router を使用できます。

  1. 新しい Cloud Router を作成するには、以下を指定します。

    • 名前
    • 説明(省略可)
    • 新しいルーターの Google ASN

    ネットワーク内の他の場所では使用していない任意のプライベート ASN(645126553442000000004294967294)を使用できます。Google ASN は同じ Cloud Router のすべての BGP セッションで使用され、後からの変更はできません。

  2. 新しいルーターを作成するには、[作成] をクリックします。

gcloud

Cloud NAT に使用されていない限り、既存の Cloud Router を使用できます。それ以外の場合は、別の Cloud Router を作成します。

Cloud Router を作成するには、次のコマンドを実行します。

gcloud compute routers create ROUTER_NAME \
    --region=REGION \
    --network=NETWORK \
    --asn=GOOGLE_ASN

次のように置き換えます。

  • ROUTER_NAME: Cloud VPN ゲートウェイと同じリージョン内の Cloud Router の名前
  • REGION: ゲートウェイとトンネルを作成する Google Cloud リージョン
  • NETWORK: VPC ネットワークの名前
  • GOOGLE_ASN: ピア ネットワークでまだ使用していないプライベート ASN(645126553442000000004294967294)。この Google ASN は同じ Cloud Router のすべての BGP セッションに使用され、後で変更できません。

作成するルーターは、次の出力例のようになります。

Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
NAME       REGION        NETWORK
router-a   us-central1   network-a

API

Cloud NAT に使用されていない限り、既存の Cloud Router を使用できます。それ以外の場合は、別の Cloud Router を作成します。

Cloud Router を作成するには、routers.insert メソッドを使用して POST リクエストを行います。

 POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers
 {
   "name": "router-a",
   "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-a"
 }

VPN トンネルの作成

Console

1 つのインターフェースでピア VPN ゲートウェイ リソースを構成した場合、[VPN の作成] ページの 1 つの VPN トンネル ダイアログで 1 つのトンネルを構成します。99.99% の SLA を達成する必要がある場合は、2 つ目のトンネルを作成する必要があります。

2 つまたは 4 つのインターフェースを持つピア VPN ゲートウェイ リソースを構成した場合、[VPN の作成] ページの下部に表示される関連するダイアログで構成します。

VPN トンネルを作成する手順は次のとおりです。

  1. 該当する場合、[関連付けられている Cloud VPN ゲートウェイ インターフェース] の下で、このトンネルのピア VPN ゲートウェイ インターフェースに関連付ける HA VPN インターフェースと IP アドレスの組み合わせを選択します。
  2. [関連付けられているピア VPN ゲートウェイ インターフェース] の下で、このトンネルと HA VPN インターフェースに関連付けるピア VPN ゲートウェイ インターフェースと IP アドレスの組み合わせを選択します。このインターフェースは実際のピアルーターのインターフェースと一致する必要があります。
    1. トンネルの [名前] を指定します。
    2. [説明](省略可)を指定します。
    3. [IKE バージョン] を指定します。ピアルーターが IKE v2 をサポートしている場合は、デフォルト設定の IKE v2 をおすすめします。IPv6 トラフィックを許可するには、IKEv2 を選択する必要があります。
    4. 事前共有キー(共有シークレット)を使用して [IKE 事前共有キー] を指定します。このキーは、ピア ゲートウェイに作成するパートナー トンネル用の事前共有キーに対応させる必要があります。ピア VPN ゲートウェイで事前共有キーをまだ構成しておらず、これから生成する場合は、[生成してコピー] をクリックします。事前共有キーは VPN トンネルの作成後に取得できないため、安全な場所に記録してください。
    5. [完了] をクリックします。
    6. [VPN の作成] ページの、残りのトンネル ダイアログでトンネル作成手順を繰り返します。
  3. すべてのトンネルを構成したら、[作成して続行] をクリックします。

gcloud

HA VPN ゲートウェイのインターフェースごとに 1 つずつ、2 つの VPN トンネルを作成します。VPN トンネルを作成する場合は、先に作成した外部 VPN ゲートウェイとして VPN トンネルのピア側を指定します。外部 VPN ゲートウェイの冗長性の種類に応じて、次のいずれかのオプションを使用してトンネルを構成します。

オプション 1: 外部 VPN ゲートウェイが、2 つの個別のピア VPN ゲートウェイ デバイス、または 2 つの IP アドレスを持つ単一のデバイスである場合

  • この場合、1 つの VPN トンネルが外部 VPN ゲートウェイの interface 0 に接続し、もう 1 つの VPN トンネルが外部 VPN ゲートウェイの interface 1 に接続する必要があります。

    gcloud compute vpn-tunnels create TUNNEL_NAME_IF0 \
       --peer-external-gateway=PEER_GW_NAME \
       --peer-external-gateway-interface=PEER_EXT_GW_IF0 \
       --region=REGION \
       --ike-version=IKE_VERS \
       --shared-secret=SHARED_SECRET \
       --router=ROUTER_NAME \
       --vpn-gateway=GW_NAME \
       --interface=INT_NUM_0
    
    gcloud compute vpn-tunnels create TUNNEL_NAME_IF1 \
       --peer-external-gateway=PEER_GW_NAME \
       --peer-external-gateway-interface=PEER_EXT_GW_IF1 \
       --region=REGION \
       --ike-version=IKE_VERS \
       --shared-secret=SHARED_SECRET \
       --router=ROUTER_NAME \
       --vpn-gateway=GW_NAME \
       --interface=INT_NUM_1
    

    次のように置き換えます。

    • TUNNEL_NAME_IF0TUNNEL_NAME_IF1: トンネルの名前。ゲートウェイ インターフェース名を含めてトンネルに名前を付けると、後でトンネルを識別するために役立ちます。
    • PEER_GW_NAME: 前に作成した外部ピア ゲートウェイの名前
    • PEER_EXT_GW_IF0PEER_EXT_GW_IF1: 前に外部ピア ゲートウェイで構成したインターフェース番号
    • IKE_VERS: 1(IKEv1 の場合)または 2(IKEv2 の場合)。可能であれば、IKE バージョンは IKEv2 を使用してください。ピア ゲートウェイで IKEv1 を使用する必要がある場合は、--ike-version 2--ike-version 1 に置き換えます。IPv6 トラフィックを許可するには、IKEv2 を指定する必要があります。
    • SHARED_SECRET: 事前共有キー(共有シークレット)。これは、ピア ゲートウェイに作成するパートナー トンネル用の事前共有キーに対応させる必要があります。推奨事項については、強力な事前共有キーを生成するをご覧ください。
    • GW_NAME: HA VPN ゲートウェイの名前
    • INT_NUM_0: 前に作成した HA VPN ゲートウェイの最初のインターフェースの番号 0
    • INT_NUM_1: 前に作成した HA VPN ゲートウェイの 2 番目のインターフェースの番号 1
    • 省略可: --vpn-gateway-region は、HA VPN ゲートウェイが動作するリージョンです。--region と同じ値になります。指定しない場合、このオプションが自動的に設定されます。このオプションは、このコマンド呼び出しのデフォルトの region プロパティ値をオーバーライドします。

    コマンド出力は次の例のようになります。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-0].
    NAME                       REGION        GATEWAY       VPN_INTERFACE   PEER_GATEWAY  PEER_INTERFACE
    tunnel-a-to-on-prem-if-0   us-central1   ha-vpn-gw-a   0               peer-gw       0
    
    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-1].
    NAME                       REGION        GATEWAY       VPN_INTERFACE   PEER_GATEWAY  PEER_INTERFACE
    tunnel-a-to-on-prem-if-1   us-central1   ha-vpn-gw-a   1               peer-gw       1
    

オプション 2: 外部 VPN ゲートウェイが単一の外部 IP アドレスを持つ単一ピア VPN ゲートウェイの場合

  • この場合、両方の VPN トンネルが外部 VPN ゲートウェイの interface 0 に接続する必要があります。

    gcloud compute vpn-tunnels create TUNNEL_NAME_IF0 \
       --peer-external-gateway=PEER_GW_NAME \
       --peer-external-gateway-interface=PEER_EXT_GW_IF0 \
       --region=REGION \
       --ike-version=IKE_VERS \
       --shared-secret=SHARED_SECRET \
       --router=ROUTER_NAME \
       --vpn-gateway=GW_NAME \
       --interface=INT_NUM_0
    
    gcloud compute vpn-tunnels create TUNNEL_NAME_IF1 \
       --peer-external-gateway=PEER_GW_NAME \
       --peer-external-gateway-interface=PEER_EXT_GW_IF0 \
       --region=REGION \
       --ike-version=IKE_VERS \
       --shared-secret=SHARED_SECRET \
       --router=ROUTER_NAME \
       --vpn-gateway=GW_NAME \
       --interface=INT_NUM_1
    

    次のように置き換えます。

    • TUNNEL_NAME_IF0TUNNEL_NAME_IF1: トンネルの名前。ゲートウェイ インターフェース名を含めてトンネルに名前を付けると、後でトンネルを識別するために役立ちます。
    • PEER_GW_NAME: 前に作成した外部ピア ゲートウェイの名前
    • PEER_EXT_GW_IF0: 前に外部ピア ゲートウェイで構成したインターフェース番号
    • 省略可: --vpn-gateway-region は、HA VPN ゲートウェイが動作するリージョンです。--region と同じ値になります。指定しない場合、このオプションが自動的に設定されます。このオプションは、このコマンド呼び出しのデフォルトの region プロパティ値をオーバーライドします。
    • IKE_VERS: 1(IKEv1 の場合)または 2(IKEv2 の場合)。可能であれば、IKE バージョンは IKEv2 を使用してください。ピア ゲートウェイで IKEv1 を使用する必要がある場合は、--ike-version 2--ike-version 1 に置き換えます。IPv6 トラフィックを許可するには、IKEv2 を指定する必要があります。
    • SHARED_SECRET: 事前共有キー(共有シークレット)。これは、ピア ゲートウェイに作成するパートナー トンネル用の事前共有キーに対応させる必要があります。推奨事項については、強力な事前共有キーを生成するをご覧ください。
    • INT_NUM_0: 前に作成した HA VPN ゲートウェイの最初のインターフェースの番号 0
    • INT_NUM_1: 前に作成した HA VPN ゲートウェイの 2 番目のインターフェースの番号 1

    コマンド出力は次の例のようになります。

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-0].
    NAME                       REGION       GATEWAY        VPN_INTERFACE   PEER_GATEWAY   PEER_INTERFACE
    tunnel-a-to-on-prem-if-0   us-central1  ha-vpn-gw-a    0               peer-gw        0
    
    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-1].
    NAME                       REGION       GATEWAY        VPN_INTERFACE   PEER_GATEWAY   PEER_INTERFACE
    tunnel-a-to-on-prem-if-1   us-central1  ha-vpn-gw-a    1               peer-gw        0
    

API

HA VPN ゲートウェイの各インターフェースに 1 つずつ、2 つの VPN トンネルを作成するには、vpnTunnels.insert メソッドを使用して POST リクエストを行います。99.99% の稼働時間 SLA を取得するには、HA VPN ゲートウェイの各インターフェースにトンネルを作成する必要があります。

  1. 最初のトンネルを作成するには、次のコマンドを実行します。

       POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels
       {
         "name": "ha-vpn-gw-a-tunnel-0",
         "ikeVersion": 2,
         "peerExternalGateway": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/externalVpnGateways/my-peer-gateway",
         "peerExternalGatewayInterface": 0,
         "router": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/router-a",
         "sharedSecret": "SHARED_SECRET",
         "vpnGateway": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnGateways/ha-vpn-gw-a",
         "vpnGatewayInterface": 0
       }
    

    このトンネルに関連付けられた BGP セッションで IPv6 を有効にする場合、ikeVersion2 を指定する必要があります。

  2. 2 番目のトンネルを作成するには、次のパラメータを変更してこのコマンドを繰り返します。

    • name
    • peerExternalGatewayInterface
    • sharedSecret または sharedSecretHash(必要に応じて)
    • vpnGatewayInterface: 他の HA VPN ゲートウェイ インターフェースの値に変更します。この例では、1 に変更します。

BGP セッションを作成する

HA VPN トンネルごとに、IPv4 BGP セッション、IPv6 BGP セッション(プレビュー)、またはその両方を作成できます。

具体的な手順については、HA VPN と VPC ネットワーク トラフィックに適した BGP セッションの種類を選択して確認してください。

BGP セッションの種類 HA VPN ゲートウェイ VPC ネットワーク MP-BGP の許可
IPv4 BGP セッション IPv4 のみ、またはデュアルスタック IPv4 のみ、またはデュアルスタック
IPv6 BGP セッション デュアルスタック デュアルスタック
IPv4 と IPv6 の両方の BGP セッション デュアルスタック デュアルスタック ×

HA VPN トンネルの BGP セッションで MP-BGP を使用するには、デュアルスタック HA VPN ゲートウェイを使用する必要があります。

また、同じ HA VPN トンネルで IPv4 BGP セッションと IPv6 BGP セッションを設定するには、デュアルスタック HA VPN ゲートウェイを使用する必要があります。ただし、個々の IPv4 BGP セッションと IPv6 BGP セッションで MP-BGP を有効にすることはできません。

IPv4 BGP セッション

コンソール

BGP セッションを作成する手順は次のとおりです。

  1. BGP セッションを今すぐ構成しない場合は、[後で BGP セッションを構成] をクリックして [まとめとリマインダー] ページを開きます。
  2. BGP セッションを今すぐ構成する場合は、最初の VPN トンネルで [構成] をクリックします。
  3. [BGP セッションの作成] ページで、次の手順を行います。
    1. BGP セッションの [名前] を指定します。
    2. ピア VPN ゲートウェイ用に構成された [ピア ASN] を指定します。
    3. (省略可)[アドバタイズされたルートの優先度] を指定します。
    4. 省略可: BGP セッションで IPv6 アドレス接頭辞の交換を許可するには、[IPv6 を有効にする] チェックボックスをオンにします。
    5. [Cloud Router の BGP IP] アドレスと [BGP ピア IP] アドレスを指定します。IPv4 アドレスが次の要件を満たしていることを確認します。
      • 各 BGP IPv4 アドレスは、169.254.0.0/16 範囲内に収まる同じ /30 サブネットに属している必要があります。
      • 各 BGP IPv4 アドレスは、/30 サブネットの最初のホストまたは 2 番目のホストです。サブネットの最初と最後の IP アドレスは、ネットワーク アドレスとブロードキャスト アドレス用に予約されています。
      • BGP セッションの各 BGP アドレス範囲は、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意でなければなりません。
    6. 省略可: IPv6 を有効にした場合、IPv6 ネクストホップ アドレスは自動または手動で割り振ることができます。アドレスを手動で割り振るには:
      1. [手動] を選択します。
      2. Cloud Router の IPv6 ネクストホップの IPv6 アドレスを入力します。このアドレスは、Cloud Router によってアドバタイズされる IPv6 ルートのネクストホップ アドレスです。アドレスは、2600:2d00:0:2::/63 の範囲内でなければなりません。
      3. ピア IPv6 ネクストホップの IPv6 アドレスを入力します。このアドレスは、Cloud Router が BGP ピアから学習した IPv6 ルートのネクストホップ アドレスです。アドレスは、2600:2d00:0:2::/63 の範囲内でなければなりません。
    7. (省略可)[MD5 認証] では [有効] を選択します。これにより、Cloud Router とそのピアの間の BGP セッションを認証できます。MD5 認証の構成方法については、MD5 認証を使用するをご覧ください。MD5 認証は、後で有効にすることもできます。
    8. (省略可)[アドバタイズされたルート] リストをクリックして、カスタムルートを作成します。
    9. [保存して次へ] をクリックします。
  4. ゲートウェイで構成した残りのトンネルに対して前の手順を繰り返します。トンネルごとに、異なる [Cloud Router の BGP IP] アドレスと [BGP ピア IP] アドレスを使用します。
  5. すべての BGP セッションを構成したら、[BGP 構成を保存] をクリックします。

gcloud

以前 HA VPN ゲートウェイ インターフェースに構成した各トンネルに Cloud Router インターフェースと BGP ピアを作成するには、次の操作を行います。

コマンドでは、以下を置き換えます。

  • ROUTER_INTERFACE_NAME_0ROUTER_INTERFACE_NAME_1: Cloud Router インターフェースの名前。以前に構成したトンネル名に関連する名前を使用すると便利です。
  • TUNNEL_NAME_0TUNNEL_NAME_1: 構成した HA VPN ゲートウェイ インターフェースに関連付けられたトンネル
  • IP_VERSION: IPV4 を指定するか、未指定のままにします。指定しない場合は、デフォルトの IPV4 が使用されます。
  • IP_PREFIXESCUSTOM_ROUTE_PRIORITY: BGP セッションの学習ルートを手動で指定できる値。この機能の詳細については、カスタム学習ルートをご覧ください。
  • AUTHENTICATION_KEY: MD5 認証に使用する秘密鍵。このオプション機能の詳細については、MD5 認証の使用をご覧ください。

BGP セッションに IPv4 アドレスを割り当てる

BGP アドレスの構成方法(自動または手動)を選択します。これらのコマンドでは、BGP で IPv6 が有効になりません。

IPv6 を有効にする場合は、IPv6 ネクストホップ アドレスを割り当てるに記載されているコマンドを実行します。

自動

Google Cloud にリンクローカル BGP IPv4 アドレスを自動的に選択させる手順は次のとおりです。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud compute routers add-interface ROUTER_NAME \
       --interface-name=ROUTER_INTERFACE_NAME_0 \
       --vpn-tunnel=TUNNEL_NAME_0 \
       --region=REGION
    

    デフォルトでは、IP バージョンを指定しない場合、このコマンドはインターフェースに IPv4 アドレスを割り当てます。

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 最初のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_0 は、ピア VPN インターフェースの名前に置き換えます。PEER_ASN は、BGP ピアの ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION
    

    ピアにカスタム学習ルートを指定する場合は、--set-custom-learned-route-ranges フラグを追加します。必要に応じて、--custom-learned-route-priority フラグを使用して、ルートの優先度を 065535 (両端を含む)の範囲で設定できます。各 BGP セッションには、セッションに構成したすべてのカスタム学習ルートに適用される優先度値が 1 つあります。この機能の詳細については、カスタム学習ルートをご覧ください。

    たとえば、カスタム学習ルートを追加し、ルートの優先度を設定するには、次のコマンドを実行します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --set-custom-learned-route-ranges=IP_PREFIXES \
       --custom-learned-route-priority=CUSTOM_ROUTE_PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを追加します。このフィールドを使用して秘密鍵を指定します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --md5-authentication-key=AUTHENTICATION_KEY
    

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

2 番目の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --region=REGION
    
  2. 2 番目のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_1 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION
    

    最初のトンネルでカスタム学習ルートを構成した場合は、2 番目のトンネルで同じルートを構成することもできます。たとえば、ルートのバックアップとして機能するように 2 つ目のトンネルを構成できます。この場合、ルートの優先度を低くします(値を大きくします)。両方のトンネルを等価コスト マルチパス(ECMP)ルートの一部として使用する場合は、最初のトンネルと同じ優先度を設定します。いずれの場合も、次のようなコマンドを使用します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_1 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_1 \
       --region=REGION \
       --set-custom-learned-route-ranges=IP_PREFIXES \
       --custom-learned-route-priority=CUSTOM_ROUTE_PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを使用して秘密鍵を指定します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION \
     --md5-authentication-key=AUTHENTICATION_KEY
    

手動

Cloud Router インターフェースと BGP ピアに関連付けられた IPv4 BGP アドレスを手動で割り当てるには、次の操作を行います。

VPN トンネルごとに、169.254.0.0/16 の範囲から /30 ブロックのリンクローカル IPv4 アドレスのペアを決定します(合計で 4 つのサブネット /30、HA VPN ごとに 1 つ)。指定する IPv4 サブネットは、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意である必要があります。

トンネルごとに、いずれかの BGP IPv4 アドレスを Cloud Router に割り当て、他の BGP IPv4 アドレスをピア VPN ゲートウェイに割り当てます。ピア BGP IPv4 アドレスを使用するように、ピア VPN デバイスを構成します。

以下のコマンドでは、次のように置き換えてください。

  • GOOGLE_BGP_IP_0: Cloud VPN ゲートウェイ interface 0 上のトンネルの Cloud Router インターフェースの BGP IPv4 アドレス。PEER_BGP_IP_0 は、ピアの BGP IPv4 アドレスを表します。
  • GOOGLE_BGP_IP_1: Cloud VPN ゲートウェイ interface 1 上のトンネルの Cloud Router インターフェースの BGP IPv4 アドレス。PEER_BGP_IP_1 は、ピアの BGP IPv4 アドレスを表します。
  • MASK_LENGTH: 30。Cloud Router は、169.254.0.0/16 範囲の一意の /30 サブネットを使用する必要があります。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。ROUTER_INTERFACE_NAME_0 は、インターフェースの名前に置き換えます。

    gcloud compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_0 \
      --vpn-tunnel=TUNNEL_NAME_0 \
      --ip-address=GOOGLE_BGP_IP_0 \
      --mask-length 30 \
      --region=REGION
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. インターフェースに BGP ピア構成を追加します。PEER_NAME_0 はピアの名前に置き換え、PEER_ASN はピア VPN ゲートウェイに構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_0 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_0 \
     --peer-ip-address=PEER_BGP_IP_0 \
     --region=REGION
    

    ピアにカスタム学習ルートを指定する場合は、--set-custom-learned-route-ranges フラグを追加します。必要に応じて、--custom-learned-route-priority フラグを使用して、ルートの優先度を 065535 (両端を含む)の範囲で設定できます。各 BGP セッションには、セッションに構成したすべてのカスタム学習ルートに適用される優先度値が 1 つあります。この機能の詳細については、カスタム学習ルートをご覧ください。

    たとえば、カスタム学習ルートを追加し、ルートの優先度を設定するには、次のコマンドを実行します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --set-custom-learned-route-ranges=IP_PREFIXES \
       --custom-learned-route-priority=CUSTOM_ROUTE_PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを使用して秘密鍵を指定します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
      --peer-name=PEER_NAME_0 \
      --peer-asn=PEER_ASN \
      --interface=ROUTER_INTERFACE_NAME_0 \
      --peer-ip-address=PEER_BGP_IP_0 \
      --region=REGION \
      --md5-authentication-key=AUTHENTICATION_KEY
    

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

2 番目の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。ROUTER_INTERFACE_NAME_1 は、インターフェースの名前に置き換えます。

    gcloud compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --ip-address=GOOGLE_BGP_IP_1 \
     --mask-length 30 \
     --region=REGION
    
  2. インターフェースに BGP ピア構成を追加します。PEER_NAME_1 はピアの名前に置き換え、PEER_ASN はピア VPN ゲートウェイに構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --peer-ip-address=PEER_BGP_IP_1 \
     --region=REGION
    

    最初のトンネルでカスタム学習ルートを構成した場合は、2 番目のトンネルで同じルートを指定することをおすすめします。たとえば、ルートのバックアップとして機能するように 2 つ目のトンネルを構成できます。この場合、ルートの優先度を低くします(値を大きくします)。両方のトンネルを等価コスト マルチパス(ECMP)ルートの一部として使用する場合は、最初のトンネルと同じ優先度を設定します。いずれの場合も、次のようなコマンドを使用します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_1 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_1 \
       --region=REGION \
       --set-custom-learned-route-ranges=IP_PREFIXES \
       --custom-learned-route-priority=PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを使用して秘密鍵を指定します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
      --peer-name=PEER_NAME_1 \
      --peer-asn=PEER_ASN \
      --interface=ROUTER_INTERFACE_NAME_0 \
      --peer-ip-address=PEER_BGP_IP_0 \
      --region=REGION \
      --md5-authentication-key=AUTHENTICATION_KEY
    

IPv6 ネクストホップ アドレスを割り当てる

このセクションのコマンドは、VPN トンネルで MP-BGP を使用して IPv4 と IPv6 の両方のトラフィックを交換する場合にのみ使用します。このトンネル経由で IPv6 トラフィックをルーティングしない場合や、後でこのトンネルに単一の IPv6 BGP セッションを追加する予定がある場合は、IPv4 BGP アドレスを割り当てるに記載されているコマンドを使用できます。

自動

MP-BGP を使用する IPv4 BGP セッションを作成すると、Google Cloud によって自動的に IPv6 ネクストホップ アドレスが割り当てられます。2600:2d00:0:2::/63 の範囲から未使用のアドレスが割り当てられます。

この構成は、Cloud Router と BGP ピア IPv4 アドレスの自動構成と手動構成のどちらを選択するかに依存しません。次のコマンドでは自動構成を使用します。ただし、IPv4 BGP アドレスを割り当てるで説明されている --ip-address フラグと --peer-ip-address フラグを使用して、BGP IPv4 と BGP ピア IPv4 アドレスを割り当てることもできます。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud compute routers add-interface ROUTER_NAME \
       --interface-name=ROUTER_INTERFACE_NAME_0 \
       --vpn-tunnel=TUNNEL_NAME_0 \
       --region=REGION
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 最初のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_0 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --enable-ipv6
    

    --enable-ipv6 フラグを指定すると、この IPv4 BGP セッションで IPv6 ルート交換が有効になります。これは、IPv6 ネクストホップ アドレスを割り当てるために必要です。IPv6 ルート交換は後で無効にできます。詳細については、IPv4 または IPv6 セッションでマルチプロトコル BGP を構成するをご覧ください。

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

2 番目の VPN トンネルの場合

  1. Cloud Router に 2 番目のインターフェースを追加します。

    gcloud compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --region=REGION
    
  2. 2 番目のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_1 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION \
     --enable-ipv6
    

手動

MP-BGP を使用する IPv4 BGP セッションを作成する場合は、Cloud Router と BGP ピアの両方に IPv6 ネクストホップ アドレスを手動で構成できます。

この構成は、Cloud Router と BGP ピアの IPv4 アドレスの自動構成と手動構成のどちらを選択するかに依存しません。これらのアドレスを手動で構成する方法の例については、IPv4 BGP アドレスを割り当てるをご覧ください。

VPN トンネルごとに、IPv6 ネクストホップ アドレスのペアを決定します。指定する IPv6 ネクストホップ アドレスは、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意にする必要があり、Google によって事前に割り振られた内部 IPv6 範囲(2600:2d00:0:2::/63)から選択する必要があります。

BGP IPv6 ネクストホップ アドレスを手動で割り当てるには、次の操作を行います。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud compute routers add-interface ROUTER_NAME \
       --interface-name=ROUTER_INTERFACE_NAME_0 \
       --vpn-tunnel=TUNNEL_NAME_0 \
       --region=REGION
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 最初のトンネルのインターフェースに BGP ピアを追加します。

    gcloud compute routers add-bgp-peerROUTER_NAME \
      --peer-name=PEER_NAME_0 \
      --peer-asn=PEER_ASN \
      --interface=ROUTER_INTERFACE_NAME_0 \
      --region=REGION \
      --enable-ipv6 \
      --ipv6-nexthop-address=IPV6_NEXTHOP_ADDRESS \
      --peer-ipv6-nexthop-address=PEER_IPV6_NEXTHOP_ADDRESS
    

    コマンドでは、以下を置き換えます。

    • PEER_NAME_0 は、ピア VPN インターフェースの名前に置き換えます。
    • PEER_ASN は、ピア VPN ゲートウェイ用に構成された ASN に置き換えます。
    • IPV6_NEXTHOP_ADDRESS: Cloud Router によってアドバタイズされる IPv6 ルートのネクストホップ アドレス。アドレスは 2600:2d00:0:2::/64 または 2600:2d00:0:3::/64 の範囲内になければなりません。
    • PEER_IPV6_NEXTHOP_ADDRESS: BGP ピアから Cloud Router が学習する IPv6 ルートのネクストホップ アドレス。アドレスは 2600:2d00:0:2::/64 または 2600:2d00:0:3::/64 の範囲内になければなりません。

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

    2 番目の VPN トンネルの場合

  3. Cloud Router に 2 番目のインターフェースを追加します。

    gcloud compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --region=REGION
    
  4. 2 番目のトンネルの 2 番目のインターフェースに BGP ピア構成を追加します。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
      --peer-name=PEER_NAME_1 \
      --peer-asn=PEER_ASN \
      --interface=ROUTER_INTERFACE_NAME_1 \
      --region=REGION \
      --enable-ipv6 \
      --ipv6-nexthop-address=IPV6_NEXTHOP_ADDRESS \
      --peer-ipv6-nexthop-address=PEER_IPV6_NEXTHOP_ADDRESS
    

    コマンドでは、以下を置き換えます。

    • PEER_NAME_1 は、ピア VPN インターフェースの名前に置き換えます。
    • PEER_ASN は、ピア VPN ゲートウェイ用に構成された ASN に置き換えます。
    • IPV6_NEXTHOP_ADDRESS: Cloud Router によってアドバタイズされる IPv6 ルートのネクストホップ アドレス
    • PEER_IPV6_NEXTHOP_ADDRESS: BGP ピアから Cloud Router が学習した IPv6 ルートのネクストホップ アドレス

API

  1. Cloud Router インターフェースを作成するには、routers.patch メソッドまたは routers.update メソッドを使用して PATCH または UPDATE リクエストを行います。PATCH は、指定したパラメータのみを更新します。UPDATE は、Cloud Router のすべてのパラメータを更新します。

    IPv4 BGP セッションの各 BGP アドレス範囲は、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意でなければなりません。

    2 番目の HA VPN ゲートウェイの VPN トンネルごとに、この手順とコマンドを繰り返します。

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "interfaces": [
       {
         "name": "if-tunnel-a-to-on-prem-if-0",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipRange": "169.254.0.1/30"
        }
      ]
    }
    
  2. VPN トンネルの Cloud Router のインターフェースに BGP ピア構成を追加するには、routers.patch メソッドまたは routers.update メソッドを使用して、PATCH または UPDATE リクエストを行います。namepeerAsn 以外のオプションをすべて変更して、このコマンドを他の VPN トンネルに繰り返します。

    例:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "169.254.0.1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "169.254.0.2",
       "advertiseMode": "DEFAULT"
      }
    ]
    }
    

    以下に、IPv6 ルート交換を有効にして IPv4 BGP ピアを追加し、IPv6 ネクストホップ アドレスを手動で構成するコマンドの例を示します。ipv6NexthopAddresspeerIpv6NexthopAddress を省略すると、IPv6 ネクストホップ アドレスが自動的に割り当てられます。

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "169.254.0.1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "169.254.0.2",
       "advertiseMode": "DEFAULT",
       "enableIpv6": true,
       "ipv6NexthopAddress: "2600:2d00:0:2::1"
       "peerIpv6NexthopAddress: "2600:2d00:0:2::2"
      }
    ]
    }
    

    ピアにカスタム学習ルートを指定する場合は、ルートの IP 接頭辞を定義します。必要に応じて、ルートの優先度を 065535(両端を含む)の範囲で設定できます。各 BGP セッションには、セッションに構成したすべてのカスタム学習ルートに適用される優先度値が 1 つあります。この機能の詳細については、カスタム学習ルートをご覧ください。

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "169.254.0.1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "169.254.0.2",
       "advertiseMode": "DEFAULT",
       "enableIpv6": true,
       "ipv6NexthopAddress": "2600:2d00:0:2::1",
       "peerIpv6NexthopAddress": "2600:2d00:0:2::2",
       "customLearnedRoutePriority": 200,
       "customLearnedIpRanges": [
          {
            "range": "1.2.3.4"
          },
          {
            "range": "6.7.0.0/16"
          },
          {
            "range": "2001:db8:abcd:12::/64"
          }
         ]
        }
      ]
    }
    

    MD5 認証を使用するようにセッションを構成する場合、リクエストに認証鍵を含める必要があります。つまり、鍵とその鍵の名前の両方を指定する必要があります。また、BGP ピアリング セッションの作成時に名前で鍵を参照する必要があります。例:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "md5AuthenticationKeys": [
      {
       "name": "bgppeer-1-key",
       "key": "secret_key_value"
       }
      ],
    }
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "169.254.0.1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "169.254.0.2",
       "advertiseMode": "DEFAULT",
       "md5AuthenticationKeyName": "bgppeer-1-key"
      }
    ]
    }
    

IPv6 BGP セッション

gcloud

以前 HA VPN ゲートウェイ インターフェースに構成した各トンネルに IPv6 Cloud Router インターフェースと BGP ピアを作成するには、次の操作を行います。

コマンドでは、以下を置き換えます。

  • ROUTER_INTERFACE_NAME_0ROUTER_INTERFACE_NAME_1: Cloud Router インターフェースの名前。以前に構成したトンネル名に関連する名前を使用すると便利です。
  • TUNNEL_NAME_0TUNNEL_NAME_1: 構成した HA VPN ゲートウェイ インターフェースに関連付けられたトンネル
  • IP_VERSION: IPV6。このパラメータは、Google Cloud でこのインターフェースに IPv6 アドレスを自動的に割り当てる場合にのみ必要です。このインターフェースに IPv6 アドレスを手動で割り当てる場合は、このフラグを省略できます。

  • IP_PREFIXESCUSTOM_ROUTE_PRIORITY: BGP セッションの学習ルートを手動で指定できる値。この機能の詳細については、カスタム学習ルートをご覧ください。

  • AUTHENTICATION_KEY: MD5 認証に使用する秘密鍵。このオプション機能の詳細については、MD5 認証の使用をご覧ください。

省略可: BGP ID 範囲を割り当てる

Cloud Router に最初のインターフェースを追加すると、自動的に BGP ID 範囲が Cloud Router に割り当てられます。Cloud Router に独自の BGP ID 範囲を定義する場合は、独自の範囲を作成できます。この範囲は後で変更することもできます。詳細については、Cloud Router の BGP ID 範囲を構成するをご覧ください。

IPv6 BGP アドレスを割り当てる

次の手順では、自動または手動で構成された BGP IPv6 と BGP ピア IPv6 アドレスを使用して IPv6 BGP セッションを作成します。

MP-BGP と IPv6 BGP を使用する場合は、IPv4 ネクストホップ アドレスの割り当てるに記載されているコマンドを実行します。

自動

Google Cloud が BGP セッションの IPv6 アドレスを自動的に選択できるようにするには、次の操作を行います。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
       --interface-name=ROUTER_INTERFACE_NAME_0 \
       --vpn-tunnel=TUNNEL_NAME_0 \
       --region=REGION \
       --ip-version=IPV6
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/beta/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 最初のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_0 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION
    

    ピアにカスタム学習ルートを指定する場合は、--set-custom-learned-route-ranges フラグを追加します。必要に応じて、--custom-learned-route-priority フラグを使用して、ルートの優先度を 065535 (両端を含む)の範囲で設定できます。各 BGP セッションには、セッションに構成したすべてのカスタム学習ルートに適用される優先度値が 1 つあります。この機能の詳細については、カスタム学習ルートをご覧ください。

    たとえば、カスタム学習ルートを追加し、ルートの優先度を設定するには、次のコマンドを実行します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --set-custom-learned-route-ranges=IP_PREFIXES \
       --custom-learned-route-priority=CUSTOM_ROUTE_PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを追加します。このフィールドを使用して秘密鍵を指定します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --md5-authentication-key=AUTHENTICATION_KEY
    

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

2 番目の VPN トンネルの場合

  1. Cloud Router に 2 番目のインターフェースを追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_1 \
      --vpn-tunnel=TUNNEL_NAME_1 \
      --region=REGION \
      --ip-version=IPV6
    
  2. 2 番目のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_1 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION
    

    最初のトンネルでカスタム学習ルートを構成した場合は、2 番目のトンネルで同じルートを構成することもできます。たとえば、ルートのバックアップとして機能するように 2 つ目のトンネルを構成できます。この場合、ルートの優先度を低くします(値を大きくします)。両方のトンネルを等価コスト マルチパス(ECMP)ルートの一部として使用する場合は、最初のトンネルと同じ優先度を設定します。いずれの場合も、次のようなコマンドを使用します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION \
     --set-custom-learned-route-ranges=IP_PREFIXES \
     --custom-learned-route-priority=CUSTOM_ROUTE_PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを使用して秘密鍵を指定します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION \
     --md5-authentication-key=AUTHENTICATION_KEY
    

手動

Cloud Router インターフェースと BGP ピアに関連付けられた BGP セッションに IPv6 アドレスを手動で割り当てるには、次の操作を行います。

VPN トンネルごとに、構成する BGP セッションのタイプに応じて BGP セッションに適した IPv6 アドレスのペアを決定します。

IPv6 アドレスは、マスク長が /126 以下で fdff:1::/64 範囲内の一意のローカル アドレス(ULA)にする必要があります。例: fdff:1:1:1::/112

BGP セッションの IPv6 アドレスには、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意のアドレスを指定する必要があります。

トンネルごとに、いずれかの IPv6 アドレスを Cloud Router に割り当て、他の IPv6 アドレスをピア VPN ゲートウェイに割り当てます。BGP セッションのピア IPv6 アドレスを使用するようにピア VPN デバイスを構成します。

以下のコマンドでは、次のように置き換えてください。

  • GOOGLE_BGP_IPV6_0: Cloud VPN ゲートウェイ interface 0 上のトンネルの Cloud Router インターフェースの IPv6 アドレス。PEER_BGP_IPV6_0 は BGP ピアの IPv6 アドレスを表します。これは、GOOGLE_BGP_IPV6_0 の IP バージョンと一致している必要があります。
  • GOOGLE_BGP_IPV6_1: Cloud VPN ゲートウェイ interface 1 上のトンネルの Cloud Router インターフェースの IPv6 アドレス。PEER_BGP_IPV6_1 は BGP ピアの IPv6 アドレスを表します。これは、GOOGLE_BGP_IPV6_1 の IP バージョンと一致している必要があります。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。ROUTER_INTERFACE_NAME_0 は、インターフェースの名前に置き換えます。

    gcloud beta compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_0 \
     --vpn-tunnel=TUNNEL_NAME_0 \
     --ip-address=GOOGLE_BGP_IPV6_0 \
     --mask-length=MASK_LENGTH  \
     --region=REGION \
    

    MASK_LENGTH は、126 以下の値に置き換えます。

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/beta/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. インターフェースに BGP ピア構成を追加します。PEER_NAME_0with a name for the peer, and replacePEER_ASN は、ピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_0 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_0 \
     --peer-ip-address=PEER_BGP_IPV6_0 \
     --region=REGION
    

    ピアにカスタム学習ルートを指定する場合は、--set-custom-learned-route-ranges フラグを追加します。必要に応じて、--custom-learned-route-priority フラグを使用して、ルートの優先度を 065535 (両端を含む)の範囲で設定できます。各 BGP セッションには、セッションに構成したすべてのカスタム学習ルートに適用される優先度値が 1 つあります。この機能の詳細については、カスタム学習ルートをご覧ください。

    たとえば、カスタム学習ルートを追加し、ルートの優先度を設定するには、次のコマンドを実行します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_0 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_0 \
     --region=REGION \
     --set-custom-learned-route-ranges=IPV6_PREFIXES \
     --custom-learned-route-priority=CUSTOM_ROUTE_PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを使用して秘密鍵を指定します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_0 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_0 \
     --peer-ip-address=PEER_BGP_IPV6_0 \
     --region=REGION \
     --md5-authentication-key=AUTHENTICATION_KEY
    

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

2 番目の VPN トンネルの場合

  1. Cloud Router に 2 番目のインターフェースを追加します。ROUTER_INTERFACE_NAME_1 は、インターフェースの名前に置き換えます。

    gcloud beta compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --ip-address=GOOGLE_BGP_IPV6_1 \
     --mask-length=MASK_LENGTH \
     --region=REGION \
    

    MASK_LENGTH は、126 以下の値に置き換えます。

  2. インターフェースに BGP ピア構成を追加します。PEER_NAME_1 はピアの名前に置き換え、PEER_ASN はピア VPN ゲートウェイに構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --peer-ip-address=PEER_BGP_IPV6_1 \
     --region=REGION
    

    最初のトンネルでカスタム学習ルートを構成した場合は、2 番目のトンネルで同じルートを指定することをおすすめします。たとえば、ルートのバックアップとして機能するように 2 つ目のトンネルを構成できます。この場合、ルートの優先度を低くします(値を大きくします)。両方のトンネルを等価コスト マルチパス(ECMP)ルートの一部として使用する場合は、最初のトンネルと同じ優先度を設定します。いずれの場合も、次のようなコマンドを使用します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --region=REGION \
     --set-custom-learned-route-ranges=IPV6_PREFIXES \
     --custom-learned-route-priority=PRIORITY
    

    MD5 認証を使用する場合は、--md5-authentication-key フラグを使用して秘密鍵を指定します。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1 \
     --peer-ip-address=PEER_BGP_IPV6_1 \
     --region=REGION \
     --md5-authentication-key=AUTHENTICATION_KEY
    

IPv4 ネクストホップ アドレスを割り当てる

このセクションのコマンドは、VPN トンネルで MP-BGP を使用する場合にのみ使用してください。MP-BGP を使用すると、IPv6 BGP セッションを介して IPv4 ルートを交換できます。

トンネルの BGP セッションで MP-BGP を使用しない場合は、IPv6 BGP アドレスを割り当てるに記載されているコマンドを使用します。

BGP ピアのネクストホップの IPv4 または IPv6 アドレスは、自動的に構成することも、手動で構成することもできます。

自動

MP-BGP を使用する IPv6 BGP セッションを作成すると、Google Cloud によって自動的に IPv4 ネクストホップ アドレスが割り当てられます。169.254.0.0/16 の範囲から未使用のアドレスが割り当てられます。

この構成は、Cloud Router と BGP ピア IPv6 アドレスの自動構成と手動構成のどちらを選択するかに依存しません。次のコマンドでは自動構成を使用します。ただし、「IPv6 BGP IP アドレスを割り当てる」で説明されている --ip-address フラグと --peer-ip-address フラグを使用して、Cloud Router インターフェースと BGP ピアに IPv6 アドレスを割り当てることもできます。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_0 \
      --vpn-tunnel=TUNNEL_NAME_0 \
      --region=REGION \
      --ip-version=IPV6
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/beta/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 最初のトンネルのインターフェースに BGP ピア構成を追加します。PEER_NAME_0 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0 \
       --region=REGION \
       --enable-ipv4
    

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

2 番目の VPN トンネルの場合

  1. Cloud Router に 2 番目のインターフェースを追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_1 \
      --vpn-tunnel=TUNNEL_NAME_1 \
      --region=REGION \
      --ip-version=IPV6
    
  2. 2 番目のトンネルの 2 番目のインターフェースに BGP ピア構成を追加します。PEER_NAME_1 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_1 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_1 \
       --region=REGION \
       --enable-ipv4
    

手動

MP-BGP を使用する IPv6 BGP セッションを作成する場合は、Cloud Router と BGP ピアの両方に IPv4 ネクストホップ アドレスを手動で構成できます。

この構成は、BGP セッションの Cloud Router と IPv6 アドレスの自動構成と手動構成のどちらを選択するかに依存しません。これらのアドレスを手動で構成する方法の例については、IPv6 BGP アドレスを割り当てるをご覧ください。

VPN トンネルごとに、IPv4 ネクストホップ アドレスのペアを決定します。指定する IPv4 ネクストホップ アドレスは、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意であり、リンクローカル IPv4 範囲 169.254.0.0/16 から選択する必要があります。

BGP IPv4 ネクストホップ アドレスを手動で割り当てるには、次の操作を行います。

最初の VPN トンネルの場合

  1. Cloud Router にインターフェースを追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_0 \
      --vpn-tunnel=TUNNEL_NAME_0 \
      --region=REGION \
      --ip-version=IPV6
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/beta/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 最初のトンネルのインターフェースに BGP ピアを追加します。

    gcloud beta compute routers add-bgp-peerROUTER_NAME \
      --peer-name=PEER_NAME_0 \
      --peer-asn=PEER_ASN \
      --interface=ROUTER_INTERFACE_NAME_0 \
      --region=REGION \
      --enable-ipv4 \
      --ipv4-nexthop-address=IPV4_NEXTHOP_ADDRESS \
      --peer-ipv4-nexthop-address=PEER_IPV4_NEXTHOP_ADDRESS
    

    コマンドでは、以下を置き換えます。

    • PEER_NAME_0 は、ピア VPN インターフェースの名前に置き換えます。
    • PEER_ASN は、ピア VPN ゲートウェイ用に構成された ASN に置き換えます。
    • IPV4_NEXTHOP_ADDRESS: Cloud Router によってアドバタイズされる IPv4 ルートのネクストホップ アドレス。アドレスは 169.254.0.0/16 の範囲内になければなりません。
    • PEER_IPV4_NEXTHOP_ADDRESS: BGP ピアから Cloud Router が学習する IPv4 ルートのネクストホップ アドレス。アドレスは 169.254.0.0/16 の範囲内になければなりません。

    コマンド出力は次の例のようになります。

    Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
    

    2 番目の VPN トンネルの場合

  3. Cloud Router に 2 番目のインターフェースを追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_1 \
      --vpn-tunnel=TUNNEL_NAME_1 \
      --region=REGION \
      --ip-version=IPV6
    
  4. 2 番目のトンネルのインターフェースに BGP ピア構成を追加します。

    gcloud beta compute routers add-bgp-peerROUTER_NAME \
      --peer-name=PEER_NAME_1 \
      --peer-asn=PEER_ASN \
      --interface=ROUTER_INTERFACE_NAME_1 \
      --region=REGION \
      --enable-ipv4 \
      --ipv4-nexthop-address=IPV4_NEXTHOP_ADDRESS \
      --peer-ipv4-nexthop-address=PEER_IPV4_NEXTHOP_ADDRESS
    

    以下のコマンドでは、次のように置き換えてください。

    • PEER_NAME_1 は、ピア VPN インターフェースの名前に置き換えます。
    • PEER_ASN は、ピア VPN ゲートウェイ用に構成された ASN に置き換えます。
    • IPV4_NEXTHOP_ADDRESS: Cloud Router によってアドバタイズされる IPv4 ルートのネクストホップ アドレス。アドレスは 169.254.0.0/16 の範囲内になければなりません。
    • PEER_IPV4_NEXTHOP_ADDRESS: BGP ピアから Cloud Router が学習する IPv4 ルートのネクストホップ アドレス。アドレスは 169.254.0.0/16 の範囲内になければなりません。

API

  1. Cloud Router インターフェースを作成して IPv6 アドレスを割り当てるには、routers.patch メソッドまたは routers.update メソッドを使用して、PATCH または UPDATE リクエストを行います。PATCH は、指定したパラメータのみを更新します。UPDATE は、Cloud Router のすべてのパラメータを更新します。

    次の例では、手動で構成された IPv6 アドレスを持つインターフェースを作成します。

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "interfaces": [
       {
         "name": "if-tunnel-a-to-on-prem-if-0",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipRange": "fdff:1:1:1::/112"
        }
      ]
    }
    

    IPv6 BGP セッションの各 BGP アドレス範囲は、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意でなければなりません。

    別の例として、次のコマンドは、自動的に割り当てられた IPv6 アドレスを持つインターフェースを作成します。

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "interfaces": [
       {
         "name": "if-tunnel-a-to-on-prem-if-0",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipVersion": "IPV6"
        }
      ]
    }
    

    この手順を HA VPN ゲートウェイの VPN トンネルごとに繰り返します。

  2. VPN トンネルの Cloud Router に BGP ピア構成を追加するには、routers.patch メソッドまたは routers.update メソッドを使用して、PATCH または UPDATE リクエストを行います。namepeerAsn 以外のオプションをすべて変更して、このコマンドを他の VPN トンネルに繰り返します。

    例:

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "fdff:1:1:1::1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "fdff:1:1:1::2",
       "advertiseMode": "DEFAULT"
      }
    ]
    }
    

    以下に、IPv4 ルート交換が有効で IPv4 ネクストホップ アドレスが手動で構成された IPv6 BGP インターフェースに BGP ピアを追加するコマンドの例を示します。ipv4NexthopAddresspeerIpv4NexthopAddress を省略すると、IPv4 ネクストホップ アドレスが自動的に割り当てられます。

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers//ROUTER_NAME
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "fdff:1:1:1::1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "fdff:1:1:1::2",
       "advertiseMode": "DEFAULT",
       "enableIpv4": true,
       "ipv4NexthopAddress: "169.254.0.1",
       "peerIpv4NexthopAddress: "169.254.0.2"
      }
    ]
    }
    

    ピアにカスタム学習ルートを指定する場合は、ルートの IP 接頭辞を定義します。必要に応じて、ルートの優先度を 065535(両端を含む)の範囲で設定できます。各 BGP セッションには、セッションに構成したすべてのカスタム学習ルートに適用される優先度値が 1 つあります。この機能の詳細については、カスタム学習ルートをご覧ください。

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "fdff:1:1:1::1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "fdff:1:1:1::2",
       "advertiseMode": "DEFAULT",
       "enableIpv4": true,
       "ipv4NexthopAddress: "169.254.0.1",
       "peerIpv4NexthopAddress: "169.254.0.2"
       "customLearnedRoutePriority": 200,
       "customLearnedIpRanges": [
          {
            "range": "1.2.3.4"
          },
          {
            "range": "6.7.0.0/16"
          },
          {
            "range": "2001:db8:abcd:12::/64"
          }
         ]
        }
      ]
    }
    

    MD5 認証を使用するようにセッションを構成する場合、リクエストに認証鍵を含める必要があります。つまり、鍵とその鍵の名前の両方を指定する必要があります。また、BGP ピアリング セッションの作成時に名前で鍵を参照する必要があります。例:

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "md5AuthenticationKeys": [
      {
       "name": "bgppeer-1-key",
       "key": "secret_key_value"
       }
      ],
    }
    {
     "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0",
       "ipAddress": "fdff:1:1:1::1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0",
       "peerAsn": 65002,
       "peerIpAddress": "fdff:1:1:1::2",
       "advertiseMode": "DEFAULT",
       "md5AuthenticationKeyName": "bgppeer-1-key"
      }
    ]
    }
    

IPv4 と IPv6 の両方の BGP セッション

同じ HA VPN トンネルで並行して実行される IPv4 BGP セッションと IPv6 BGP セッション(プレビュー)の両方を作成するには、次の操作を行います。

この構成を作成するには、Cloud Router に 2 つの BGP インターフェースと 2 つの BGP ピアを追加し、同じ VPN トンネルにリンクします。デュアルスタック HA VPN ゲートウェイでは、シングルスタック BGP セッションを使用する必要があります。MP-BGP は使用できません。

gcloud

HA VPN ゲートウェイ インターフェースで以前に構成したトンネルごとに 2 つの Cloud Router BGP インターフェースと 2 つの BGP ピアを作成するには、次の操作を行います。

コマンドでは、以下を置き換えます。

  • ROUTER_INTERFACE_NAME_0_ipv4ROUTER_INTERFACE_NAME_0_ipv6: 同じトンネルを共有する Cloud Router BGP インターフェースの最初のペアの名前。以前に構成したトンネル名に関連する名前を使用すると便利です。
  • ROUTER_INTERFACE_NAME_1_ipv4ROUTER_INTERFACE_NAME_1_ipv6: Cloud Router BGP インターフェースの 2 番目のセットの名前
  • TUNNEL_NAME_0TUNNEL_NAME_1: 構成した HA VPN ゲートウェイ インターフェースに関連付けられたトンネル
  • IP_PREFIXESCUSTOM_ROUTE_PRIORITY: BGP セッションの学習ルートを手動で指定できる値。この機能の詳細については、カスタム学習ルートをご覧ください。
  • AUTHENTICATION_KEY: MD5 認証に使用する秘密鍵。このオプション機能の詳細については、MD5 認証の使用をご覧ください。

    また、Cloud Router インターフェースと BGP ピアに IPv4 アドレスと IPv6 アドレスを自動または手動で構成することもできます。

    省略可: BGP ID 範囲を割り当てる

    IPv6 アドレスを持つ最初のインターフェースを Cloud Router に追加すると、BGP ID 範囲が自動的に Cloud Router に割り当てられます。Cloud Router に独自の BGP ID 範囲を定義する場合は、独自の範囲を作成できます。この範囲は後で変更することもできます。詳細については、Cloud Router の BGP ID 範囲を構成するをご覧ください。

自動

BGP アドレスが Google Cloud によって自動的に選択されるようにするには、次の操作を行います。

最初の VPN トンネルの場合

  1. IPv4 アドレスを持つインターフェースを Cloud Router に追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
       --interface-name=ROUTER_INTERFACE_NAME_0_ipv4 \
       --vpn-tunnel=TUNNEL_NAME_0 \
       --region=REGION
       --ip-version=IPV4
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 同じトンネルに IPv6 アドレスを持つ 2 つ目のインターフェースを追加します。次のコマンドを実行します。

    gcloud beta compute routers add-interface ROUTER_NAME \
       --interface-name=ROUTER_INTERFACE_NAME_0_ipv6 \
       --vpn-tunnel=TUNNEL_NAME_0 \
       --region=REGION \
       --ip-version=IPV6
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/beta/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  3. 最初のトンネルの最初のインターフェース(IPv4 アドレスを持つインターフェース)に BGP ピア構成を追加します。PEER_NAME_0_ipv4 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0_ipv4 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0_ipv4 \
       --region=REGION
    
  4. 最初のトンネルの 2 番目のインターフェース(IPv6 アドレスを持つインターフェース)に BGP ピア構成を追加します。PEER_NAME_0_ipv6 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0_ipv6 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0_ipv6 \
       --region=REGION
    

    ほとんどの場合、PEER_ASN は同じですが、オンプレミス ネットワーク トポロジによっては異なる場合があります。

2 番目の VPN トンネルの場合

  1. IPv4 アドレスを持つインターフェースを Cloud Router に追加します。

    gcloud beta compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1_ipv4 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --region=REGION
     --ip-version=IPV4
    
  2. 同じトンネルに IPv6 アドレスを持つインターフェースを追加します。次のコマンドを実行します。

    gcloud beta compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1_ipv6 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --region=REGION \
     --ip-version=IPV6
    
  3. 2 番目のトンネルの最初のインターフェース(IPv4 アドレスを持つインターフェース)に BGP ピア構成を追加します。PEER_NAME_1_ipv4 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1_ipv4 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1_ipv4 \
     --region=REGION
    
  4. 2 番目のトンネルの 2 番目のインターフェース(IPv6 アドレスを持つインターフェース)に BGP ピア構成を追加します。PEER_NAME_1_ipv6 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_1_ipv6 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_1_ipv6 \
       --region=REGION
    

    ほとんどの場合、PEER_ASN は同じですが、オンプレミス ネットワーク トポロジによっては異なる場合があります。

手動

Cloud Router インターフェースと BGP ピアに関連付けられた IPv4 アドレスと IPv6 アドレスを手動で割り当てるには、次の操作を行います。

VPN トンネルごとに、構成する BGP セッションの種類に応じて適切な BGP アドレスのペアを決定します。セッションの種類ごとに合計で 4 つの IP アドレスを選択する必要があります。

  • IPv4 BGP セッションの場合、4 つの IPv4 アドレスは、169.254.0.0/16 範囲の /30 ブロックのリンクローカル IPv4 アドレスである必要があります。例: 169.254.0.1/30
  • IPv6 BGP セッション(プレビュー)の場合、4 つの IPv6 アドレスは /126 以下の長さで、fdff:1::/64 範囲内で一意のローカル アドレス(ULA)である必要があります。例: fdff:1:1:1::/112

指定する BGP アドレスは、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意にする必要があります。

トンネルごとに、BGP IPv6 アドレスを Cloud Router に割り当てます。BGP ピア IPv6 アドレスを使用するようにピア VPN デバイスを構成します。

以下のコマンドでは、次のように置き換えてください。

  • GOOGLE_BGP_IPV4_0: Cloud VPN ゲートウェイ interface 0 上のトンネルの Cloud Router インターフェースの IPv4 アドレス。PEER_BGP_IPV4_0 は BGP ピアの IPv4 アドレスを表します。これは GOOGLE_BGP_IPV4_0 と一致します。
  • GOOGLE_BGP_IPV6_0: Cloud VPN ゲートウェイ interface 0 上のトンネルの Cloud Router インターフェースの IPv6 アドレス。PEER_BGP_IPV6_0 は BGP ピアの IPv6 アドレスを表します。これは GOOGLE_BGP_IPV6_0 と一致します。
  • GOOGLE_BGP_IPV4_1: Cloud VPN ゲートウェイ interface 1 上のトンネルの Cloud Router インターフェースの IPv4 アドレス。PEER_BGP_IPV4_1 は BGP ピアの IPv4 アドレスを表します。これは GOOGLE_BGP_IPV4_1 と一致します。
  • GOOGLE_BGP_IPV6_1: Cloud VPN ゲートウェイ interface 1 上のトンネルの Cloud Router インターフェースの IPv6 アドレス。PEER_BGP_IPV6_1 は BGP ピアの IPv6 アドレスを表します。これは GOOGLE_BGP_IPV6_1 と一致します。

最初の VPN トンネルの場合

  1. IPv4 アドレスのインターフェースを Cloud Router に追加します。ROUTER_INTERFACE_NAME_0_ipv4 は、インターフェースの名前に置き換えます。

    gcloud compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_0_ipv4 \
      --vpn-tunnel=TUNNEL_NAME_0 \
      --ip-address=GOOGLE_BGP_IPV4_0 \
      --mask-length 30 \
      --region=REGION
    

    コマンド出力は次の例のようになります。

    Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
    
  2. 同じトンネルに IPv6 アドレスのインターフェースを追加します。ROUTER_INTERFACE_NAME_0_ipv6 は、インターフェースの名前に置き換えます。

    gcloud beta compute routers add-interface ROUTER_NAME \
      --interface-name=ROUTER_INTERFACE_NAME_0_ipv6 \
      --vpn-tunnel=TUNNEL_NAME_0 \
      --ip-address=GOOGLE_BGP_IPV6_0 \
      --mask-length=MASK_LENGTH  \
      --region=REGION \
    

    MASK_LENGTH は、126 以下の値に置き換えます。

  3. 最初のトンネルの最初のインターフェースに BGP ピア構成を追加します。PEER_NAME_0_ipv4 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_0_ipv4 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_0_ipv4 \
     --peer-ip-address=PEER_BGP_IPV4_0 \
     --region=REGION
    
  4. 最初のトンネルの 2 番目のインターフェースに BGP ピア構成を追加します。PEER_NAME_0_ipv6 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_0_ipv6 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_0_ipv6 \
       --peer-ip-address=PEER_BGP_IPV6_0 \
       --region=REGION
    

    ほとんどの場合、PEER_ASN は同じですが、オンプレミス ネットワーク トポロジによっては異なる場合があります。

2 番目の VPN トンネルの場合

  1. IPv4 アドレスのインターフェースを Cloud Router に追加します。ROUTER_INTERFACE_NAME_1_ipv4 は、インターフェースの名前に置き換えます。

    gcloud compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1_ipv4 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --ip-address=GOOGLE_BGP_IPV4_1 \
     --mask-length MASK_LENGTH \
     --region=REGION
    
  2. 同じトンネルに IPv6 アドレスのインターフェースを追加します。ROUTER_INTERFACE_NAME_1_ipv6 は、インターフェースの名前に置き換えます。

    gcloud beta compute routers add-interface ROUTER_NAME \
     --interface-name=ROUTER_INTERFACE_NAME_1_ipv6 \
     --vpn-tunnel=TUNNEL_NAME_1 \
     --ip-address=GOOGLE_BGP_IPV6_1 \
     --mask-length=MASK_LENGTH \
     --region=REGION \
    

    MASK_LENGTH は、126 以下の値に置き換えます。

  3. 2 番目のトンネルの最初のインターフェースに BGP ピア構成を追加します。PEER_NAME_1_ipv4 はピアの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud compute routers add-bgp-peer ROUTER_NAME \
     --peer-name=PEER_NAME_1_ipv4 \
     --peer-asn=PEER_ASN \
     --interface=ROUTER_INTERFACE_NAME_1_ipv4 \
     --peer-ip-address=PEER_BGP_IPV4_1 \
     --region=REGION
    
  4. 2 番目のトンネルの 2 番目のインターフェースに BGP ピア構成を追加します。PEER_NAME_1_ipv6 はピア VPN インターフェースの名前に置き換え、PEER_ASN はピア VPN ゲートウェイ用に構成された ASN に置き換えます。

    gcloud beta compute routers add-bgp-peer ROUTER_NAME \
       --peer-name=PEER_NAME_1_ipv6 \
       --peer-asn=PEER_ASN \
       --interface=ROUTER_INTERFACE_NAME_1_ipv6 \
       --peer-ip-address=PEER_BGP_IPV6_1 \
       --region=REGION
    

    ほとんどの場合、PEER_ASN は同じですが、オンプレミス ネットワーク トポロジによっては異なる場合があります。

API

  1. 2 つの Cloud Router インターフェースを作成するには、routers.patch メソッドまたは routers.update メソッドを使用して PATCH または UPDATE リクエストを送信します。PATCH は、指定したパラメータのみを更新します。UPDATE は、Cloud Router のすべてのパラメータを更新します。

    HA VPN ゲートウェイの最初の VPN トンネルに 2 つの Cloud Router インターフェースを作成します。IPv4 アドレスのインターフェースと IPv6 アドレスのインターフェースを作成します。同じ PATCH または UPDATE リクエストで、インターフェースとその BGP ピアの両方を構成できます。インターフェースは同じ linkedVpnTunnel トンネルに関連付けられ、BGP ピアがインターフェースに関連付けられます。

    各インターフェースの BGP アドレス範囲は、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意である必要があります。

    HA VPN ゲートウェイの VPN トンネルごとに、この手順とコマンドを繰り返します。

    次の例では、IPv4 アドレスのインターフェースと IPv6 アドレスのインターフェースを同じ linkedVpnTunnel に追加します。このコマンドの例では、IPv4 BGP アドレスと IPv6 BGP アドレスを手動で指定しています。

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "interfaces": [
       {
         "name": "if-tunnel-a-to-on-prem-if-0_ipv4",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipRange": "169.254.0.1/30"
        },
        {
         "name": "if-tunnel-a-to-on-prem-if-0_ipv6",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipRange": "fdff:1:1:1::/112"
        }
    
      ]
    }
    

    次の例では、IPv4 BGP インターフェースと IPv6 BGP インターフェースを同じ linkedVpnTunnel に追加し、IPv4 BGP アドレスと IPv6 BGP アドレスを自動的に割り当てます。

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
     "interfaces": [
       {
         "name": "if-tunnel-a-to-on-prem-if-0_ipv4",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipVersion": "IPV4"
        },
        {
         "name": "if-tunnel-a-to-on-prem-if-0_ipv6",
         "linkedVpnTunnel": "ha-vpn-gw-a-tunnel-0",
         "ipVersion": "IPV6"
        }
    
      ]
    }
    
  2. VPN トンネルごとに BGP ピアを Cloud Router に追加するには、routers.patch メソッドまたは routers.update メソッドを使用して、PATCH または UPDATE リクエストを送信します。必要に応じてすべてのオプションを変更して、このコマンドを他の VPN トンネルに繰り返します。

    例:

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
    "bgpPeers": [
     {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0_ipv4",
       "ipAddress": "169.254.0.1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0_ipv4",
       "peerAsn": 65002,
       "peerIpAddress": "169.254.0.2",
       "advertiseMode": "DEFAULT"
      },
      {
       "interfaceName": "if-tunnel-a-to-on-prem-if-0_ipv6",
       "ipAddress": fdff:1:1:1::1",
       "name": "bgp-peer-tunnel-a-to-on-prem-if-0_ipv6",
       "peerAsn": 65002,
       "peerIpAddress": "fdff:1:1:1::2",
       "advertiseMode": "DEFAULT"
      }
    ]
    }
    

構成を確認する

コンソール

構成を確認するには、[まとめとリマインダー] ページに移動します。

  1. このページの [まとめ] セクションには、HA VPN ゲートウェイとピア VPN ゲートウェイのプロファイルに関する情報が一覧表示されます。各 VPN トンネルについて、VPN トンネルのステータスBGP セッション名BGP セッションのステータス、MED 値(アドバタイズされたルート優先度)が表示されます。
  2. このページの [リマインダー] セクションには、Cloud VPN とピア VPN 間の完全な VPN 接続を確立するために必要な手順が一覧表示されます。
  3. ピア VPN デバイスの構成テンプレートをダウンロードする場合は、[構成のダウンロード] をクリックします。テンプレートの選択方法とサポートされているベンダーのリストを表示する手順については、ピア VPN 構成テンプレートをダウンロードするをご覧ください。後で [ピア VPN ゲートウェイ] ページに移動して構成テンプレートをダウンロードすることもできます。
  4. このページの情報を確認したら、[OK] をクリックします。

gcloud

Cloud Router の構成を確認する手順は次のとおりです。

  • Cloud Router によって選択された BGP セッションの IP アドレスを一覧表示します。既存の Cloud Router に新しいインターフェースを追加した場合、新しいインターフェースの BGP IPv4 または IPv6 アドレスが、最も大きいインデックス番号で一覧表示される場合があります。BGP IPv4 または BGP IPv6 アドレス peerIpAddress を使用して、ピア VPN ゲートウェイを構成します。

    gcloud compute routers get-status ROUTER_NAME \
       --region=REGION \
       --format='flattened(result.bgpPeerStatus[].name,
         result.bgpPeerStatus[].ipAddress, result.bgpPeerStatus[].peerIpAddress)'
    

    2 つの Cloud VPN トンネル(インデックス 0 とインデックス 1)を管理する Cloud Router の予想される出力は、次の例のようになります。

    • GOOGLE_BGP_IP_0 は Cloud VPN ゲートウェイ interface 0 上のトンネルの Cloud Router インターフェースの BGP IP アドレスを表します。PEER_BGP_IP_0 はピアの BGP IP アドレスを表します。
    • GOOGLE_BGP_IP_1 は Cloud VPN ゲートウェイ interface 1 上のトンネルの Cloud Router インターフェースの BGP IP アドレスを表します。PEER_BGP_IP_1 はピアの BGP IP アドレスを表します。
      result.bgpPeerStatus[0].ipAddress:      169.254.0.1 GOOGLE_BGP_IP_0
      result.bgpPeerStatus[0].name:           bgp-peer-tunnel-a-to-on-prem-if-0
      result.bgpPeerStatus[0].peerIpAddress:  169.254.0.2 PEER_BGP_IP_0
      result.bgpPeerStatus[1].ipAddress:      169.254.1.1 GOOGLE_BGP_IP_1
      result.bgpPeerStatus[1].name:           bgp-peer-tunnel-a-to-on-prem-if-1
      result.bgpPeerStatus[1].peerIpAddress:  169.254.1.2 PEER_BGP_IP_1
    
  • 次のコマンドを使用して、Cloud Router の構成の完全なリストを取得することもできます。

    gcloud compute routers describe ROUTER_NAME \
       --region=REGION
    

    完全なリストは次の例のようになります。

    bgp:
      advertiseMode: DEFAULT
      asn: 65001
    bgpPeers:
    - interfaceName: if-tunnel-a-to-on-prem-if-0
      ipAddress: 169.254.0.1
      name: bgp-peer-tunnel-a-to-on-prem-if-0
      peerAsn: 65002
      peerIpAddress: 169.254.0.2
    - interfaceName: if-tunnel-a-to-on-prem-if-1
      ipAddress: 169.254.1.1
      name: bgp-peer-tunnel-a-to-on-prem-if-1
      peerAsn: 65004
      peerIpAddress: 169.254.1.2
    creationTimestamp: '2018-10-18T11:58:41.704-07:00'
    id: '4726715617198303502'
    interfaces:
    - ipRange: 169.254.0.1/30
      linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-0
      name: if-tunnel-a-to-on-prem-if-0
    - ipRange: 169.254.1.1/30
      linkedVpnTunnel: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-1
      name: if-tunnel-a-to-on-prem-if-1
      kind: compute#router
      name: router-a
      network: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/network-a
      region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
      selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a
    

API

Cloud Router の構成を確認するには、routers.getRouterStatus メソッドを使用して GET リクエストを行います。リクエストの本文は空にします。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers

シングル トンネル ゲートウェイにトンネルを作成する

Console

99.99% の稼働時間の SLA を実現するには、HA VPN ゲートウェイの各 HA VPN インターフェースにトンネルを構成します。

次のような場合は 2 つ目のトンネルを構成します。

  • 単一のピア VPN インターフェースを持つピア VPN ゲートウェイに接続する HA VPN ゲートウェイを構成した場合。
  • 以前、任意の数のインターフェースを含むピア VPN ゲートウェイの HA VPN で単一のトンネルを設定したものの、現在は HA VPN ゲートウェイに対して 99.99% 稼働時間の SLA が必要な場合。

2 つ目のトンネルを構成するには、HA VPN ゲートウェイからピア VPN ゲートウェイへのトンネルを追加するの手順を行います。

アドバタイズされたルートの基本優先度を設定する(省略可)

作成する BGP セッションでは、各 Cloud Router がピア ネットワークにルートをアドバタイズできます。アドバタイズには変更されていない基本優先度が使用されます。

Google Cloud 側とピア側からの 2 つの VPN トンネルのアドバタイズされたルート優先度が一致するアクティブ / アクティブ ルーティング構成では、ピア VPN への HA VPN ゲートウェイとトンネルペアの作成に記載されている構成を使用します。Google Cloud から両方の BGP ピアに同じアドバタイズされたルート優先度を構成するには、Google Cloud 側でアドバタイズされたルート優先度を省略します。

アクティブ / パッシブ構成を作成するには、2 つの HA VPN トンネルに対して、異なるアドバタイズされたルートの優先度を構成します。一方のルート優先度が、もう一方よりも高くなければなりません。例:

  • BGP session1/tunnel1、ルート優先度 = 10
  • BGP session2/tunnel2、ルート優先度 = 20

アドバタイズされたルートの基本優先度の詳細については、アドバタイズされた接頭辞と優先度をご覧ください。

アドバタイズされるルートを、カスタム アドバタイズを使用して指定することもできます。

  • --advertisement-mode=CUSTOM フラグ(gcloud)または advertiseMode: custom フラグ(API)を追加します。
  • --set-advertisement-ranges フラグ(gcloud)または advertisedIpRanges フラグ(API)を使用して、IP アドレス範囲を指定します。

構成の完了

新しい Cloud VPN ゲートウェイとそれに関連付けられた VPN トンネルを使用するには、次の操作を行います。

  1. ピア VPN ゲートウェイを設定し、対応するトンネルを構成します。手順については、以下をご覧ください。
  2. 必要に応じて、Google Cloud とピア ネットワークにファイアウォール ルールを構成します
  3. VPN トンネルのステータスを確認します。この手順は、HA VPN ゲートウェイの高可用性構成の確認を含みます。

次のステップ