このページでは、ピア 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 の詳細については、次のリソースをご覧ください。
このトポロジの図については、HA VPN とピア VPN ゲートウェイ間をご覧ください。
Cloud VPN を設定する前に検討すべきベスト プラクティスについては、ベスト プラクティスをご覧ください。
Cloud 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 つの場合は、
0
と1
の値を使用します。 - 外部 VPN インターフェースが 4 つの場合は、
0
、1
、2
、3
の値を使用します。
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 を簡単に構成できます。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Google Cloud CLI を使用している場合は、次のコマンドを使用してプロジェクト ID を設定します。このページの
gcloud
の説明では、コマンド発行前にプロジェクト ID を設定済みであることを前提としています。gcloud config set project PROJECT_ID
-
次のコマンドを実行して、すでに設定されているプロジェクト ID を表示することもできます。
gcloud config list --format='text(core.project)'
カスタム VPC ネットワークとサブネットの作成
HA VPN ゲートウェイとトンネルペアを作成する前に、HA VPN ゲートウェイが存在するリージョンに Virtual Private Cloud(VPC)ネットワークと少なくとも 1 つのサブネットを作成します。
- カスタムモードの VPC ネットワーク(推奨)を作成するには、カスタムモードの VPC ネットワークの作成をご覧ください。
- サブネットを作成するには、サブネットの操作をご覧ください。
HA VPN ゲートウェイで IPv6 を有効にするには、VPC の作成時に IPv6 内部アドレスの割り当てを有効にする必要があります。また、IPv6 内部アドレスを使用するようにサブネットを構成する必要があります。
サブネット内の VM でも IPv6 を構成する必要があります。
- 内部 IPv6 アドレスを持つカスタムモードの VPC ネットワークを作成するには、デュアルスタック サブネットを少なくとも 1 つ含むカスタムモードの VPC ネットワークを作成するをご覧ください。
- IPv6 を有効にしたサブネットを作成するには、デュアルスタック サブネットの追加をご覧ください。
- 既存のサブネットで IPv6 を有効にするには、IPv4 サブネットをデュアルスタックのサブネットに変換するをご覧ください。
- 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 ゲートウェイの作成
Console
VPN 設定ウィザードには、HA VPN ゲートウェイ、ピア VPN ゲートウェイ リソース、トンネル、BGP セッションの作成に必要なすべての構成手順が含まれています。
HA VPN ゲートウェイを作成するには、次の手順を行います。
Google Cloud コンソールで、[VPN] ページに移動します。
ゲートウェイを初めて作成する場合は、[VPN 接続を作成] をクリックします。
[VPN 設定ウィザード] を選択します。
[VPN ゲートウェイの名前] に HA VPN ゲートウェイの名前を入力します。
[VPC ネットワーク] で、既存のネットワークまたはデフォルトのネットワークを選択します。
[リージョン] で、HA VPN ゲートウェイのリージョンを選択します。
[VPN ゲートウェイの IP バージョン] で、HA VPN ゲートウェイの IP バージョンを選択します。
HA VPN ゲートウェイとピア VPN ゲートウェイの IP バージョンは同じにする必要があります。
[VPN ゲートウェイの IP スタックタイプ] で、VPN ゲートウェイのスタックタイプを選択します。
[作成して続行] をクリックします。
コンソール画面が更新され、ゲートウェイ情報が表示されます。ゲートウェイ インターフェースごとに 2 つの外部 IP アドレスが自動的に割り振られます。今後の構成手順のために、ゲートウェイ構成の詳細をメモします。
gcloud
HA VPN ゲートウェイを作成するには、次のコマンドを実行します。ゲートウェイが作成されると、2 つの外部 IP アドレスが自動的に割り振られます(各ゲートウェイ インターフェースに 1 つ)。
- IPv4 ワークロードのみをサポートする場合は、
IPV4_ONLY
スタックタイプを使用して HA VPN ゲートウェイを作成します。 - IPv4 と IPv6 の両方のワークロードをサポートする場合は、
IPV4_IPV6
スタックタイプを使用して HA VPN ゲートウェイを作成します。 - IPv6 ワークロードのみをサポートする場合は、
IPV6_ONLY
スタックタイプを使用して HA VPN ゲートウェイを作成します。
IPv4 インターフェースを使用する HA VPN ゲートウェイを作成するには、次のコマンドを実行します。ゲートウェイが作成されると、2 つの外部 IPv4 アドレスが自動的に割り振られます(各ゲートウェイ インターフェースに 1 つ)。
gcloud compute vpn-gateways create GW_NAME \ --network=NETWORK \ --region=REGION \ [--stack-type=IP_STACK]
次のように置き換えます。
GW_NAME
: ゲートウェイの名前NETWORK
: Google Cloud ネットワークの名前REGION
: ゲートウェイとトンネルを作成する Google Cloud リージョンIP_STACK
: 使用する IP スタック。IPV4_ONLY
またはIPV4_IPV6
を指定します。このフラグを指定しない場合、スタックタイプは HA VPN ゲートウェイのIPV4_ONLY
になります。--stack-type
フラグは省略可能です。
--gateway-ip-version=IPV4
を指定することもできます。ただし、このフラグは必須ではありません。このフラグを指定しない場合、HA VPN ゲートウェイはデフォルトで外部 IPv4 アドレスを使用します。
IPv6 インターフェースを使用する HA VPN ゲートウェイを作成するには、次のコマンドを実行します。ゲートウェイが作成されると、2 つの外部 IPv6 アドレスが自動的に割り振られます(各ゲートウェイ インターフェースに 1 つ)。
gcloud 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_IPV6
またはIPV6_ONLY
を指定します。このフラグを指定しない場合、スタックタイプは HA VPN ゲートウェイのIPV4_IPV6
になります。--stack-type
フラグは省略可能です。
作成するゲートウェイは、次の出力例のようになります。--gateway-ip-version=IPV6
を指定すると、IPv6 インターフェースが割り当てられます。
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 2600:1900:4f00:2:a:49b:: 2600:1900:4f10:2:a:6a8:: 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
フィールドは省略可能です。stackType
を指定しない場合、デフォルト値はIPV4_ONLY
です。gatewayIpVersion
を指定しない場合、デフォルト値はIPV4
です。gatewayIpVersion
がIPV4
のゲートウェイで有効なstackType
値は、IPV4_IPV6
またはIPV4_ONLY
のみです。
IPv6 インターフェースを使用する HA VPN ゲートウェイを作成する場合は、
gatewayIpVersion
値としてIPV6
を指定します。stackType
フィールドは省略可能です。stackType
を指定しない場合、デフォルト値はIPV4_IPV6
です。gatewayIpVersion
がIPV6
のゲートウェイで有効なstackType
値は、IPV4_IPV6
またはIPV6_ONLY
のみです。
ピア VPN ゲートウェイ リソースを作成する
Console
ピア VPN ゲートウェイ リソースは、Google Cloud の Google Cloud 以外のゲートウェイを表します。
ピア VPN ゲートウェイ リソースを作成するには、次の手順を行います。
- [VPN の作成] ページの [ピア VPN ゲートウェイ] で、[オンプレミスまたは非 Google Cloud] を選択します。
[ピア VPN ゲートウェイの名前] で既存のピア ゲートウェイを選択するか、[新しいピア VPN ゲートウェイを作成する] をクリックします。
既存のゲートウェイを選択すると、Google Cloud コンソールは、既存のピア ゲートウェイで構成したピア インターフェースの数に基づいて、構成するトンネルの数を選択します。
新しいピア ゲートウェイを作成するには、次の手順に沿って操作します。
- ピア VPN ゲートウェイの名前を指定します。
- [ピア VPN ゲートウェイ インターフェース] の下で、ピア ゲートウェイのインターフェースの種類に応じて、
one
、two
、またはfour
を選択します。それぞれの種類の例については、トポロジのページをご覧ください。 - 各ピア VPN インターフェースのフィールドに、そのインターフェースに使用する外部 IP アドレスを指定します。詳細については、ピア VPN ゲートウェイの構成をご覧ください。
- [作成] をクリックします。
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_0
とPEER_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_0
とPEER_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 ゲートウェイの場合、以下の例を使用します。ただし、
redundancyType
がSINGLE_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_REDUNDANCY
のredundancyType
を使用します。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 を使用できます。
新しい Cloud Router を作成するには、以下を指定します。
- 名前
- 説明(省略可)
- 新しいルーターの Google ASN
ネットワーク内の他の場所で使用されていない任意のプライベート ASN(
64512
~65534
、4200000000
~4294967294
)を使用できます。Google ASN は同じ Cloud Router のすべての BGP セッションで使用され、後からの変更はできません。新しいルーターを作成するには、[作成] をクリックします。
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(64512
~65534
、4200000000
~4294967294
)。この 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 トンネルを作成する手順は次のとおりです。
- 該当する場合、[関連付けられている Cloud VPN ゲートウェイ インターフェース] の下で、このトンネルのピア VPN ゲートウェイ インターフェースに関連付ける HA VPN インターフェースと IP アドレスの組み合わせを選択します。
- [関連付けられているピア VPN ゲートウェイ インターフェース] の下で、このトンネルと HA VPN インターフェースに関連付けるピア VPN ゲートウェイ インターフェースと IP アドレスの組み合わせを選択します。このインターフェースは実際のピアルーターのインターフェースと一致する必要があります。
- トンネルの [名前] を指定します。
- [説明](省略可)を指定します。
- [IKE バージョン] を指定します。ピアルーターが IKE v2 をサポートしている場合は、デフォルト設定の IKE v2 をおすすめします。IPv6 トラフィックを許可するには、IKEv2 を選択する必要があります。
- 事前共有キー(共有シークレット)を使用して [IKE 事前共有キー] を指定します。このキーは、ピア ゲートウェイに作成するパートナー トンネル用の事前共有キーに対応させる必要があります。ピア VPN ゲートウェイで事前共有キーをまだ構成しておらず、これから生成する場合は、[生成してコピー] をクリックします。事前共有キーは VPN トンネルの作成後に取得できないため、安全な場所に記録してください。
- [完了] をクリックします。
- [VPN の作成] ページの、残りのトンネル ダイアログでトンネル作成手順を繰り返します。
- すべてのトンネルを構成したら、[作成して続行] をクリックします。
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 \ [--vpn-gateway-region=VPN_GATEWAY_REGION] \ --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 \ [--vpn-gateway-region=VPN_GATEWAY_REGION] \ --interface=INT_NUM_1
次のように置き換えます。
TUNNEL_NAME_IF0
、TUNNEL_NAME_IF1
: トンネルの名前。ゲートウェイ インターフェース名を含めてトンネルに名前を付けると、後でトンネルを識別するために役立ちます。PEER_GW_NAME
: 前に作成した外部ピア ゲートウェイの名前PEER_EXT_GW_IF0
、PEER_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 プロパティ値をオーバーライドします。--vpn-gateway-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 \ [--vpn-gateway-region=VPN_GATEWAY_REGION] \ --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 \ [--vpn-gateway-region=VPN_GATEWAY_REGION] \ --interface=INT_NUM_1
次のように置き換えます。
TUNNEL_NAME_IF0
、TUNNEL_NAME_IF1
: トンネルの名前。ゲートウェイ インターフェース名を含めてトンネルに名前を付けると、後でトンネルを識別するために役立ちます。PEER_GW_NAME
: 前に作成した外部ピア ゲートウェイの名前PEER_EXT_GW_IF0
: 前に外部ピア ゲートウェイで構成したインターフェース番号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
VPN_GATEWAY_REGION
: 操作する HA VPN ゲートウェイのリージョン。--region
と同じ値になります。指定しない場合、このオプションが自動的に設定されます。このオプションは、このコマンド呼び出しのデフォルトの region プロパティ値をオーバーライドします。--vpn-gateway-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 0
API
HA VPN ゲートウェイの各インターフェースに 1 つずつ、2 つの VPN トンネルを作成するには、vpnTunnels.insert
メソッドを使用して POST
リクエストを行います。99.99% の稼働時間 SLA を取得するには、HA VPN ゲートウェイの各インターフェースにトンネルを作成する必要があります。
最初のトンネルを作成するには、次のコマンドを実行します。
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 を有効にする場合は、
ikeVersion
に2
を指定する必要があります。2 番目のトンネルを作成するには、次のパラメータを変更してこのコマンドを繰り返します。
name
peerExternalGatewayInterface
sharedSecret
またはsharedSecretHash
(必要に応じて)vpnGatewayInterface
: 他の HA VPN ゲートウェイ インターフェースの値に変更します。この例では、1
に変更します。
BGP セッションを作成する
HA VPN トンネルごとに、IPv4 BGP セッション、IPv6 BGP セッション、またはその両方を作成できます。
次の表に、HA VPN スタックと VPC ネットワーク トラフィックの BGP セッションの種類を示します。具体的な手順については、BGP セッションの種類を選択してください。
BGP セッションの種類 | HA VPN ゲートウェイ | VPC ネットワークの種類 | マルチプロトコル BGP(MP-BGP)の許可 |
---|---|---|---|
IPv4 BGP セッション | IPv4 のみ、またはデュアル スタック | IPv4 のみ、またはデュアル スタック | ○ |
IPv6 BGP セッション | デュアル スタック | デュアル スタック | ○ |
IPv4 と IPv6 の両方の BGP セッション | デュアル スタック | デュアル スタック | × |
同じトンネルで IPv4 BGP セッションと IPv6 BGP セッションの両方を設定する場合、または HA VPN トンネルの BGP セッションで MP-BGP を有効にする場合は、デュアルスタック HA VPN ゲートウェイを使用します。ただし、同じ HA VPN トンネルで IPv4 BGP セッションと IPv6 BGP セッションを設定した場合、どちらのセッションでも MP-BGP を有効にすることはできません。
IPv4 BGP セッション
コンソール
BGP セッションを作成する手順は次のとおりです。
- [BGP セッションを構成] をクリックします。
- [BGP セッションの作成] ページで、次の操作を行います。
- [BGP セッションの種類] で [IPv4 BGP セッション] を選択します。
- [名前] に、BGP セッションの名前を入力します。
- [ピア ASN] に、ピア VPN ゲートウェイ用に構成されたピア ASN を入力します。
- 省略可: [アドバタイズされたルートの優先度(MED)] に、この BGP ピアにアドバタイズされるルートの優先度を入力します。
- 省略可: IPv6 ルート交換を有効にするには、[IPv6 トラフィックを有効にする] トグルをクリックします。
[BGP IPv4 アドレスを割り振る] で、[自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。 1. [Cloud Router の BGP IPv4 アドレス] に、Cloud Router の BGP IPv4 アドレスを入力します。1. [BGP ピア IPv4 アドレス] に、BGP ピアの IPv4 アドレスを入力します。IPv4 アドレスは、次の要件を満たしている必要があります。 * 各 IPv4 アドレスが
169.254.0.0/16
アドレス範囲内に収まる同じ/30
サブネットに属している。* 各 IPv4 アドレスが/30
サブネットの最初のホストまたは 2 番目のホストになっている。サブネットの最初と最後の IP アドレスは、ネットワーク アドレスとブロードキャスト アドレス用に予約されています。* BGP セッションの各 IPv4 アドレス範囲が、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意になっている。[自動] を選択すると、Google Cloud は BGP セッションの IPv4 アドレスを自動的に選択します。
- 省略可: 前の手順で IPv6 ルート交換を有効にした場合は、[BGP IPv6 ネクストホップを割り当てる] で [自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。
- [Cloud Router の BGP IPv6 ネクストホップ] に、
2600:2d00:0:2::/63
アドレス範囲の IPv6 アドレスを入力します。この IP アドレスは、Cloud Router によってアドバタイズされる IPv6 ルートのネクストホップ アドレスです。 - [ピア BGP IPv6 ネクストホップ] に、
2600:2d00:0:2::/63
アドレス範囲の IPv6 アドレスを入力します。この IP アドレスは、Cloud Router が BGP ピアから学習した IPv6 ルートのネクストホップ アドレスです。 - 省略可: [詳細オプション] セクションを開きます。
- [BGP ピア] を有効にするには、[有効] を選択します。有効にした場合、ルーティング情報を使ってピア接続が確立されます。詳細については、BGP セッションを確立するをご覧ください。
- MD5 認証を有効にするには、[有効] を選択します。有効にした場合、BGP セッションの認証に MD5 認証が使用されます。詳細については、MD5 認証を使用するをご覧ください。MD5 認証は、後で有効にすることもできます。
- BGP セッションにアウトバウンド ルートを追加するには、[すべてのカスタム学習したルートの優先度] にカスタム学習ルートの優先度を入力します。詳細については、カスタム学習ルートをご覧ください。
- [Cloud Router の BGP IPv6 ネクストホップ] に、
- 省略可: 前の手順で IPv6 ルート交換を有効にした場合は、[BGP IPv6 ネクストホップを割り当てる] で [自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。
[保存して次へ] をクリックします。
ゲートウェイで構成した残りのトンネルに対して前の手順を繰り返します。トンネルごとに、異なる Cloud Router の BGP IP アドレスと BGP ピア IP アドレスを使用します。
[BGP 構成を保存] をクリックします。
gcloud
BGP セッションを作成する手順は次のとおりです。
コマンドでは、以下を置き換えます。
ROUTER_INTERFACE_NAME_0
、ROUTER_INTERFACE_NAME_1
: Cloud Router インターフェースの名前。以前に構成したトンネル名に関連する名前を使用すると便利です。TUNNEL_NAME_0
、TUNNEL_NAME_1
: 構成した HA VPN ゲートウェイ インターフェースに関連付けられたトンネルIP_VERSION
:IPV4
を指定するか、未指定のままにします。指定しない場合は、デフォルトのIPV4
が使用されます。IP_PREFIXES
、CUSTOM_ROUTE_PRIORITY
: BGP セッションの学習ルートを手動で指定できる値。この機能の詳細については、カスタム学習ルートをご覧ください。AUTHENTICATION_KEY
: MD5 認証に使用する秘密鍵。このオプション機能の詳細については、MD5 認証の使用をご覧ください。
BGP セッションに IPv4 アドレスを割り当てる
BGP アドレスの構成方法(自動または手動)を選択します。これらのコマンドでは、BGP で IPv6 が有効になりません。
IPv6 を有効にする場合は、IPv6 ネクストホップ アドレスを割り当てるに記載されているコマンドを実行します。
自動
Google Cloud にリンクローカル BGP IPv4 アドレスを自動的に選択させる手順は次のとおりです。
最初の VPN トンネルの場合
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].
最初のトンネルのインターフェースに 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
フラグを使用して、ルートの優先度を0
~65535
(両端を含む)の範囲で設定できます。各 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 トンネルの場合
Cloud Router にインターフェースを追加します。
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1 \ --vpn-tunnel=TUNNEL_NAME_1 \ --region=REGION
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
の IPv4 アドレス範囲の一意の/30
サブネットを使用する必要があります。
最初の VPN トンネルの場合
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].
インターフェースに 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
フラグを使用して、ルートの優先度を0
~65535
(両端を含む)の範囲で設定できます。各 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 トンネルの場合
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
インターフェースに 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 ネクストホップ アドレスが割り当てられます。Google Cloud では、2600:2d00:0:2::/63
の IPv6 アドレス範囲から未使用のアドレスが割り当てられます。
この構成は、Cloud Router と BGP ピア IPv4 アドレスの自動構成と手動構成のどちらを選択するかに依存しません。次のコマンドでは自動構成を使用します。ただし、IPv4 BGP アドレスを割り当てるで説明されている --ip-address
フラグと --peer-ip-address
フラグを使用して、BGP IPv4 と BGP ピア IPv4 アドレスを割り当てることもできます。
最初の VPN トンネルの場合
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].
最初のトンネルのインターフェースに 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 トンネルの場合
Cloud Router に 2 番目のインターフェースを追加します。
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1 \ --vpn-tunnel=TUNNEL_NAME_1 \ --region=REGION
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 トンネルの場合
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].
最初のトンネルのインターフェースに 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::/63
IPv6 アドレス範囲内にする必要があります。PEER_IPV6_NEXTHOP_ADDRESS
: BGP ピアから Cloud Router が学習した IPv6 ルートのネクストホップ アドレス。アドレスは2600:2d00:0:2::/63
の IPv6 アドレス範囲内になければなりません。
コマンド出力は次の例のようになります。
Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
2 番目の VPN トンネルの場合
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 ピア構成を追加します。
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
BGP セッションを作成する手順は次のとおりです。
Cloud Router インターフェースを作成するには、次のいずれかのリクエストを送信します。
PATCH
:routers.patch
メソッドを使用します。UPDATE
:routers.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" } ] }
インターフェースに BGP ピア構成を追加するには、次のいずれかのリクエストを送信します。
PATCH
:routers.patch
メソッドを使用します。UPDATE
:routers.update
メソッドを使用します。
name
とpeerAsn
以外のオプションをすべて変更して、このコマンドを他の 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 ルート交換を有効にして IPv6 ネクストホップ アドレスを手動で構成した BGP ピアを追加しています。
ipv6NexthopAddress
とpeerIpv6NexthopAddress
を省略すると、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 接頭辞を定義します。必要に応じて、ルートの優先度を
0
~65535
(包括的)の範囲で設定できます。各 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 セッション
コンソール
BGP セッションを作成する手順は次のとおりです。
- [BGP セッションを構成] をクリックします。
[BGP セッションの作成] ページで、次の操作を行います。
- [BGP セッションの種類] で [IPv6 BGP セッション] を選択します。
- [名前] に、BGP セッションの名前を入力します。
- [ピア ASN] に、ピア VPN ゲートウェイ用に構成されたピア ASN を入力します。
- 省略可: [アドバタイズされたルートの優先度(MED)] に、この BGP ピアにアドバタイズされるルートの優先度を入力します。
- 省略可: IPv4 ルート交換を有効にするには、[IPv4 トラフィックを有効にする] トグルをクリックします。
[BGP IPv6 アドレスを割り振る] で、[自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。
- [Cloud Router の BGP IPv6 アドレス] に、Cloud Router の BGP IPv6 アドレスを入力します。
- [BGP ピア IPv6 アドレス] に、BGP ピアの IPv6 アドレスを入力します。IPv6 アドレスは、次の要件を満たしている必要があります。
- 各アドレスは、マスク長が
/64
でfdff:1::/64
アドレス範囲のユニーク ローカル アドレス(ULA)にする必要があります。例:fdff:1::1
。 - 各アドレスは、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意である必要があります。
- 各アドレスは、マスク長が
[自動] を選択すると、Google Cloud は BGP セッションの IPv6 アドレスを自動的に選択します。
省略可: 前の手順で IPv4 ルート交換を有効にした場合は、[BGP IPv4 ネクストホップを割り当てる] で [自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。
- [Cloud Router の BGP IPv4 ネクストホップ] フィールドに、
169.254.0.0/16
アドレス範囲の IPv4 アドレスを入力します。この IP アドレスは、Cloud Router によってアドバタイズされる IPv4 ルートのネクストホップ アドレスです。 - [ピア BGP IPv4 ネクストホップ] フィールドに、
169.254.0.0/16
アドレス範囲の IP アドレスを入力します。この IP アドレスは、Cloud Router が BGP ピアから学習した IPv4 ルートのネクストホップ アドレスです。 - 省略可: [詳細オプション] セクションを開きます。
- [BGP ピア] を有効にするには、[有効] を選択します。有効にした場合、ルーティング情報を使ってピア接続が確立されます。詳細については、BGP セッションを確立するをご覧ください。
- MD5 認証を追加するには、[有効] を選択します。有効にすると、MD5 認証を使用して、Cloud Router とそのピア間の BGP セッションを認証できます。詳細については、MD5 認証を使用するをご覧ください。MD5 認証は、後で有効にすることもできます。
- BGP セッションにアウトバウンド ルートを追加するには、[すべてのカスタム学習したルートの優先度] にカスタム学習ルートの優先度を入力します。詳細については、カスタム学習ルートをご覧ください。
- [Cloud Router の BGP IPv4 ネクストホップ] フィールドに、
[保存して次へ] をクリックします。
ゲートウェイで構成した残りのトンネルに対して前の手順を繰り返します。トンネルごとに、異なる Cloud Router の BGP IP アドレスと BGP ピア IP アドレスを使用します。
[BGP 構成を保存] をクリックします。
gcloud
BGP セッションを作成する手順は次のとおりです。
コマンドでは、以下を置き換えます。
ROUTER_INTERFACE_NAME_0
、ROUTER_INTERFACE_NAME_1
: Cloud Router インターフェースの名前。以前に構成したトンネル名に関連する名前を使用すると便利です。TUNNEL_NAME_0
、TUNNEL_NAME_1
: 構成した HA VPN ゲートウェイ インターフェースに関連付けられたトンネルIP_VERSION
:IPV6
。このパラメータは、Google Cloud でこのインターフェースに IPv6 アドレスを自動的に割り当てる場合にのみ必要です。このインターフェースに IPv6 アドレスを手動で割り当てる場合は、このフラグを省略できます。IP_PREFIXES
、CUSTOM_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 トンネルの場合
Cloud Router にインターフェースを追加します。
gcloud 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/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
最初のトンネルのインターフェースに 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
ピアにカスタム学習ルートを指定する場合は、
--set-custom-learned-route-ranges
フラグを追加します。必要に応じて、--custom-learned-route-priority
フラグを使用して、ルートの優先度を0
~65535
(両端を含む)の範囲で設定できます。各 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 トンネルの場合
Cloud Router に 2 番目のインターフェースを追加します。
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1 \ --vpn-tunnel=TUNNEL_NAME_1 \ --region=REGION \ --ip-version=IPV6
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 ピアに関連付けられた BGP セッションに IPv6 アドレスを手動で割り振るには、次の操作を行います。
VPN トンネルごとに、構成する BGP セッションのタイプに応じて BGP セッションに適した IPv6 アドレスのペアを決定します。
各 IPv6 アドレスは、マスク長が /126
以下で fdff:1::/64
の IPv6 アドレス範囲内の一意のローカル アドレス(ULA)にする必要があります。例: fdff:1::1
。
各 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 トンネルの場合
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_IPV6_0 \ --mask-length=MASK_LENGTH \ --region=REGION \
MASK_LENGTH
は、126
以下の値に置き換えます。コマンド出力は次の例のようになります。
Updated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
インターフェースに BGP ピア構成を追加します。PEER_NAME_0
with a name for the peer, and replace
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_IPV6_0 \ --region=REGION
ピアにカスタム学習ルートを指定する場合は、
--set-custom-learned-route-ranges
フラグを追加します。必要に応じて、--custom-learned-route-priority
フラグを使用して、ルートの優先度を0
~65535
(両端を含む)の範囲で設定できます。各 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=IPV6_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_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 トンネルの場合
Cloud Router に 2 番目のインターフェースを追加します。
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_IPV6_1 \ --mask-length=MASK_LENGTH \ --region=REGION \
MASK_LENGTH
は、64
以下の値に置き換えます。インターフェースに 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_IPV6_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=IPV6_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_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 トンネルの場合
Cloud Router にインターフェースを追加します。
gcloud 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/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
最初のトンネルのインターフェースに 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-ipv4
コマンド出力は次の例のようになります。
Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
2 番目の VPN トンネルの場合
Cloud Router に 2 番目のインターフェースを追加します。
gcloud 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 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 アドレス範囲 169.254.0.0/16
から IPv4 ネクストホップ アドレスのペアを選択します。これらの IPv4 アドレスは、VPC ネットワーク内のすべての Cloud Router で一意である必要があります。
BGP IPv4 ネクストホップ アドレスを手動で割り振るには、次の操作を行います。
最初の VPN トンネルの場合
Cloud Router にインターフェースを追加します。
gcloud 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/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
最初のトンネルのインターフェースに 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-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
の IPv4 アドレス範囲内になければなりません。PEER_IPV4_NEXTHOP_ADDRESS
: BGP ピアから Cloud Router が学習する IPv4 ルートのネクストホップ アドレス。アドレスは169.254.0.0/16
の IPv4 アドレス範囲内になければなりません。
コマンド出力は次の例のようになります。
Creating peer [bgp-peer-tunnel-a-to-on-prem-if-0] in router [router-a]...done.
2 番目の VPN トンネルの場合
Cloud Router に 2 番目のインターフェースを追加します。
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1 \ --vpn-tunnel=TUNNEL_NAME_1 \ --region=REGION \ --ip-version=IPV6
2 番目のトンネルのインターフェースに BGP ピア構成を追加します。
gcloud 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
の IPv4 アドレス範囲内になければなりません。PEER_IPV4_NEXTHOP_ADDRESS
: BGP ピアから Cloud Router が学習する IPv4 ルートのネクストホップ アドレス。アドレスは169.254.0.0/16
の IPv4 アドレス範囲内になければなりません。
API
BGP セッションを作成する手順は次のとおりです。
Cloud Router インターフェースを作成して IPv6 アドレスを割り当てるには、
routers.patch
メソッドまたはrouters.update
メソッドを使用して、PATCH
またはUPDATE
リクエストを行います。PATCH
は、指定したパラメータのみを更新します。UPDATE
は、Cloud Router のすべてのパラメータを更新します。次の例では、手動で構成された IPv6 アドレスを持つインターフェースを作成します。
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": "fdff:1::/112" } ] }
IPv6 BGP セッションの各 BGP アドレス範囲は、VPC ネットワークのすべてのリージョンの Cloud Router 間で一意でなければなりません。
別の例として、次のコマンドは、自動的に割り当てられた IPv6 アドレスを持つインターフェースを作成します。
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", "ipVersion": "IPV6" } ] }
この手順を HA VPN ゲートウェイの VPN トンネルごとに繰り返します。
VPN トンネルの Cloud Router に BGP ピア構成を追加するには、
routers.patch
メソッドまたはrouters.update
メソッドを使用して、PATCH
またはUPDATE
リクエストを行います。name
とpeerAsn
以外のオプションをすべて変更して、このコマンドを他の 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": "fdff:1::1", "name": "bgp-peer-tunnel-a-to-on-prem-if-0", "peerAsn": 65002, "peerIpAddress": "fdff:1::2", "advertiseMode": "DEFAULT" } ] }
次の例のコマンドは、IPv4 ルート交換が有効で IPv4 ネクストホップ アドレスが手動で構成された IPv6 BGP インターフェースに BGP ピアを追加しています。
ipv4NexthopAddress
とpeerIpv4NexthopAddress
を省略すると、IPv4 ネクストホップ アドレスが自動的に割り当てられます。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": "fdff:1::1", "name": "bgp-peer-tunnel-a-to-on-prem-if-0", "peerAsn": 65002, "peerIpAddress": "fdff:1::2", "advertiseMode": "DEFAULT", "enableIpv4": true, "ipv4NexthopAddress: "169.254.0.1", "peerIpv4NexthopAddress: "169.254.0.2" } ] }
ピアにカスタム学習ルートを指定する場合は、ルートの IP 接頭辞を定義します。必要に応じて、ルートの優先度を
0
~65535
(包括的)の範囲で設定できます。各 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": "fdff:1::1", "name": "bgp-peer-tunnel-a-to-on-prem-if-0", "peerAsn": 65002, "peerIpAddress": "fdff: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/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": "fdff:1::1", "name": "bgp-peer-tunnel-a-to-on-prem-if-0", "peerAsn": 65002, "peerIpAddress": "fdff:1::2", "advertiseMode": "DEFAULT", "md5AuthenticationKeyName": "bgppeer-1-key" } ] }
IPv4 と IPv6 の両方の BGP セッション
同じ HA VPN トンネルで並行して実行される IPv4 BGP セッションと IPv6 BGP セッションの両方を作成するには、次の操作を行います。
この構成を作成するには、2 つの BGP インターフェースと 2 つの BGP ピアを Cloud Router に追加し、同じ VPN トンネルにリンクします。どちらの BGP セッションでも MP-BGP を使用できません。
コンソール
IPv4 と IPv6 の両方の BGP セッションを作成する手順は次のとおりです。
- [BGP セッションを構成] をクリックします。
[BGP セッションの作成] ページで、次の操作を行います。
- [BGP セッションの種類] で [両方] を選択します。
IPv4 BGP セッション
- [名前] に、BGP セッションの名前を入力します。
- [ピア ASN] に、ピア VPN ゲートウェイ用に構成されたピア ASN を入力します。
- [BGP IPv4 アドレスを割り振る] で、[自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。
- [Cloud Router の BGP IPv4 アドレス] に、Cloud Router の BGP IPv4 アドレスを入力します。
[BGP ピア IPv4 アドレス] に、BGP ピアの IPv4 アドレスを入力します。IPv4 アドレスは、次の要件を満たしている必要があります。
- 各 IPv4 アドレスは、
169.254.0.0/16
アドレス範囲内に収まる同じ/30
サブネットに属している必要があります。 - 各 IPv4 アドレスが
/30
サブネットの最初のホストまたは 2 つ目のホストです。サブネットの最初と最後の IP アドレスが、ネットワーク アドレスとブロードキャスト アドレス用に予約されています。 - BGP セッションの各 IPv4 アドレス範囲が、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意であることが必要です。
[自動] を選択すると、Google Cloud は BGP セッションの IPv4 アドレスを自動的に選択します。
IPv6 アドレスの自動割り振りを選択すると、Google Cloud は BGP セッションの IPv6 アドレスを自動的に選択します。
- 各 IPv4 アドレスは、
省略可: [詳細オプション] セクションを開きます。
[BGP ピア] を有効にするには、[有効] を選択します。有効にした場合、ルーティング情報を使ってピア接続が確立されます。詳細については、BGP セッションを確立するをご覧ください。
MD5 認証を追加するには、[有効] を選択します。有効にすると、MD5 認証を使用して、Cloud Router とそのピア間の BGP セッションを認証できます。詳細については、MD5 認証を使用するをご覧ください。MD5 認証は、後で有効にすることもできます。
BGP セッションにアウトバウンド ルートを追加するには、[すべてのカスタム学習したルートの優先度] にカスタム学習ルートの優先度を入力します。詳細については、カスタム学習ルートをご覧ください。
[保存して次へ] をクリックします。
IPv6 BGP セッション
- [名前] に、BGP セッションの名前を入力します。
- [ピア ASN] に、ピア VPN ゲートウェイ用に構成されたピア ASN を入力します。
- 省略可: [アドバタイズされたルートの優先度(MED)] に、この BGP ピアにアドバタイズされるルートの優先度を入力します。
- [BGP IPv6 アドレスを割り振る] で、[自動] または [手動] を選択します。[手動] を選択した場合は、次の操作を行います。
- [Cloud Router の BGP IPv6 アドレス] に、Cloud Router の BGP IPv6 アドレスを入力します。
[BGP ピア IPv6 アドレス] に、BGP ピアの IPv6 アドレスを入力します。IPv4 アドレスは、次の要件を満たしている必要があります。
- 各アドレスは、マスク長が
/64
でfdff:1::/64
アドレス範囲のユニーク ローカル アドレス(ULA)にする必要があります。例:fdff:1::1
- 各アドレスは、VPC ネットワークのすべてのリージョンのすべての Cloud Router 間で一意である必要があります。
[自動] を選択すると、Google Cloud は BGP セッションの IPv6 アドレスを自動的に選択します。
- 各アドレスは、マスク長が
省略可: [詳細オプション] セクションを開きます。
[BGP ピア] を有効にするには、[有効] を選択します。有効にした場合、ルーティング情報を使ってピア接続が確立されます。詳細については、BGP セッションを確立するをご覧ください。
MD5 認証を有効にするには、[有効] を選択します。有効にすると、MD5 認証を使用して、Cloud Router とそのピア間の BGP セッションが認証されます。詳細については、MD5 認証を使用するをご覧ください。MD5 認証は、後で有効にすることもできます。
BGP セッションにアウトバウンド ルートを追加するには、[すべてのカスタム学習したルートの優先度] にカスタム学習ルートの優先度を入力します。詳細については、カスタム学習ルートをご覧ください。
[保存して次へ] をクリックします。
ゲートウェイで構成した残りのトンネルに対して前の手順を繰り返します。トンネルごとに、異なる Cloud Router の BGP IP アドレスと BGP ピア IP アドレスを使用します。
[BGP 構成を保存] をクリックします。
gcloud
BGP セッションを作成する手順は次のとおりです。
コマンドでは、以下を置き換えます。
ROUTER_INTERFACE_NAME_0_ipv4
、ROUTER_INTERFACE_NAME_0_ipv6
: 同じトンネルを共有する Cloud Router BGP インターフェースの最初のペアの名前。以前に構成したトンネル名に関連する名前を使用すると便利です。ROUTER_INTERFACE_NAME_1_ipv4
、ROUTER_INTERFACE_NAME_1_ipv6
: Cloud Router BGP インターフェースの 2 番目のセットの名前TUNNEL_NAME_0
、TUNNEL_NAME_1
: 構成した HA VPN ゲートウェイ インターフェースに関連付けられたトンネルIP_PREFIXES
とCUSTOM_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 トンネルの場合
IPv4 アドレスを持つインターフェースを Cloud Router に追加します。
gcloud 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].
同じトンネルに IPv6 アドレスを持つ 2 つ目のインターフェースを追加します。次のコマンドを実行します。
gcloud 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/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a].
最初のトンネルの最初のインターフェース(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
最初のトンネルの 2 番目のインターフェース(IPv6 アドレスを持つインターフェース)に BGP ピア構成を追加します。
PEER_NAME_0_ipv6
はピア VPN インターフェースの名前に置き換え、PEER_ASN
はピア VPN ゲートウェイ用に構成された ASN に置き換えます。gcloud 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 トンネルの場合
IPv4 アドレスを持つインターフェースを Cloud Router に追加します。
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1_ipv4 \ --vpn-tunnel=TUNNEL_NAME_1 \ --region=REGION --ip-version=IPV4
同じトンネルに IPv6 アドレスを持つインターフェースを追加します。次のコマンドを実行します。
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=ROUTER_INTERFACE_NAME_1_ipv6 \ --vpn-tunnel=TUNNEL_NAME_1 \ --region=REGION \ --ip-version=IPV6
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
2 番目のトンネルの 2 番目のインターフェース(IPv6 アドレスを持つインターフェース)に BGP ピア構成を追加します。
PEER_NAME_1_ipv6
はピア VPN インターフェースの名前に置き換え、PEER_ASN
はピア VPN ゲートウェイ用に構成された ASN に置き換えます。gcloud 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 トンネルの場合
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].
同じトンネルに IPv6 アドレスのインターフェースを追加します。
ROUTER_INTERFACE_NAME_0_ipv6
は、インターフェースの名前に置き換えます。gcloud 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
は、64
以下の値に置き換えます。最初のトンネルの最初のインターフェースに 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
最初のトンネルの 2 番目のインターフェースに BGP ピア構成を追加します。
PEER_NAME_0_ipv6
はピア VPN インターフェースの名前に置き換え、PEER_ASN
はピア VPN ゲートウェイ用に構成された ASN に置き換えます。gcloud 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 トンネルの場合
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
同じトンネルに IPv6 アドレスのインターフェースを追加します。
ROUTER_INTERFACE_NAME_1_ipv6
は、インターフェースの名前に置き換えます。gcloud 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
は、64
以下の値に置き換えます。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
2 番目のトンネルの 2 番目のインターフェースに BGP ピア構成を追加します。
PEER_NAME_1_ipv6
はピア VPN インターフェースの名前に置き換え、PEER_ASN
はピア VPN ゲートウェイ用に構成された ASN に置き換えます。gcloud 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
BGP セッションを作成する手順は次のとおりです。
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/v1/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::/126" } ] }
次の例では、IPv4 BGP インターフェースと IPv6 BGP インターフェースを同じ
linkedVpnTunnel
に追加し、IPv4 BGP アドレスと IPv6 BGP アドレスを自動的に割り当てます。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_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" } ] }
VPN トンネルごとに BGP ピアを Cloud Router に追加するには、
routers.patch
メソッドまたはrouters.update
メソッドを使用して、PATCH
またはUPDATE
リクエストを送信します。必要に応じてすべてのオプションを変更して、このコマンドを他の 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_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", "name": "bgp-peer-tunnel-a-to-on-prem-if-0_ipv6", "peerAsn": 65002, "peerIpAddress": "fdff:1::2", "advertiseMode": "DEFAULT" } ] }
構成を確認する
Console
構成を確認するには、[まとめとリマインダー] ページに移動します。
- このページの [まとめ] セクションには、HA VPN ゲートウェイとピア VPN ゲートウェイのプロファイルに関する情報が一覧表示されます。各 VPN トンネルについて、VPN トンネルのステータス、BGP セッション名、BGP セッションのステータス、MED 値(アドバタイズされたルート優先度)が表示されます。
- このページの [リマインダー] セクションには、Cloud VPN とピア VPN 間の完全な VPN 接続を確立するために必要な手順が一覧表示されます。
- ピア VPN デバイスの構成テンプレートをダウンロードする場合は、[構成のダウンロード] をクリックします。テンプレートの選択方法とサポートされているベンダーのリストを表示する手順については、ピア VPN 構成テンプレートをダウンロードするをご覧ください。後で [ピア VPN ゲートウェイ] ページに移動して構成テンプレートをダウンロードすることもできます。
- このページの情報を確認したら、[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 トンネルを使用するには、次の操作を行います。
- ピア VPN ゲートウェイを設定し、対応するトンネルを構成します。手順については、以下をご覧ください。
- 特定のピア VPN デバイスの具体的な構成ガイドについては、サードパーティ VPN の使用をご覧ください。
- サポートされているピアトポロジについては、Cloud VPN のトポロジをご覧ください。
- 一般的な構成パラメータについては、ピア VPN ゲートウェイの構成をご覧ください。
- 必要に応じて、Google Cloud とピア ネットワークにファイアウォール ルールを構成します。
- VPN トンネルのステータスを確認します。この手順は、HA VPN ゲートウェイの高可用性構成の確認を含みます。
次のステップ
- ピア VPN ゲートウェイで許可される IP アドレスを制御する。ピア VPN ゲートウェイの IP アドレスを制限するをご覧ください。
- 高可用性と高スループットのシナリオ、または複数のサブネット シナリオを使用する。高度な構成をご覧ください。
- Cloud VPN の使用時に発生する可能性のある一般的な問題を解決する。トラブルシューティングをご覧ください。