VPC スポークの概要

このページでは、Network Connectivity Center での Virtual Private Cloud(VPC)スポークのサポートの概要について説明します。

VPC スポーク

Network Connectivity Center は、VPC スポークのサポートを使用して VPC 間の大規模なネットワーク接続を提供します。VPC スポークを作成することで、VPC スポークと一元化された接続管理モデルを使用できるようになり、個々のペア単位の VPC ネットワーク ピアリング接続を管理する運営上の複雑さが軽減されます。VPC スポークは、Network Connectivity Center ハブ上の他のスポーク VPC からすべてのサブネット ルートをエクスポートおよびインポートできます。これにより、これらの VPC ネットワークに存在するすべてのワークロード間で完全な接続が保証されます。VPC 間のネットワーク トラフィックは Google Cloud ネットワーク内に留まり、インターネットを経由しないため、プライバシーとセキュリティが確保されます。

VPC スポークは、Network Connectivity Center ハブと同じプロジェクト / 組織に配置することも、別のプロジェクトと組織に配置することもできます。VPC スポークは一度に 1 つのハブに接続できます。

VPC スポークの作成方法については、VPC スポークを作成するをご覧ください。

VPC ネットワーク ピアリングとの比較

VPC スポークは、ハイブリッド スポークを使用して IPv4 / IPv6 サブネット ルート接続と IPv4 動的ルート接続を提供することで、中規模から大規模のエンタープライズの要件をサポートします。

VPC ネットワークは、Network Connectivity Center の VPC スポークとして機能するのと同時に、VPC ネットワーク ピアリングを使用して別の VPC ネットワークに接続することもできます(ピアリングされた VPC ネットワーク自体が VPC スポークでない場合)。

Network Connectivity Center の VPC スポークと VPC ネットワーク ピアリングを使用する際には、次の点に注意してください。

機能 VPC ネットワーク ピアリング VPC スポーク
VPC ネットワーク

VPC ネットワークあたりのピアリング

ハブあたりのアクティブな VPC スポーク

サブネット範囲(サブネット ルート)

ピアリング グループあたりのサブネット範囲

ルートテーブルあたりのサブネット ルート

静的ルートと動的ルート

ピアリング グループあたりの静的ルート

ピアリング グループごとのリージョンあたりの動的ルート

リージョンごとのハブ ルート テーブルあたりの一意の動的ルート接頭辞

静的ルートの交換はサポートされていません。

エクスポート フィルタ

特定のフィルタはサポートされていません。VPC ネットワーク ピアリングのドキュメントでルート交換オプションをご覧ください。

VPC スポークごとに最大 16 個の CIDR 範囲がサポートされます。

Inter-VPC NAT

サポート対象外

サポート対象

Private Service Connect 接続の伝播

サポート対象外

サポート対象(プレビュー

他の VPC ネットワークからのプロデューサー VPC スポーク接続

サポート対象外

サポート対象

IP アドレス指定

内部 IPv4 アドレス(プライベート IPv4 アドレスとプライベートで使用されるパブリック IPv4 アドレスを含む)。有効な IPv4 範囲をご覧ください。

内部 IPv6 アドレスと外部 IPv6 アドレス。

プライベート内部 IPv4 アドレスのみ(プライベートで使用されるパブリック IPv4 アドレスを除く)有効な IPv4 範囲をご覧ください。

内部 IPv6 アドレスと外部 IPv6 アドレス(プレビュー)。

IP アドレス ファミリー サポートされている構成:
  • IPv4 サブネット範囲のみを交換する
  • IPv4 と IPv6 の両方のサブネット範囲を交換する
サポートされている構成:
  • IPv4 サブネット範囲のみを交換する
  • IPv4 と IPv6 の両方のサブネット範囲を交換する
  • IPv6 サブネット範囲のみを交換する
パフォーマンスとスループット(他の VPC 接続メカニズムと比較した場合)

最小レイテンシ、最大スループット(VM 間で同等)

最小レイテンシ、最大スループット(VM 間で同等)

ハブと異なるプロジェクトの VPC スポーク

Network Connectivity Center を使用すると、VPC スポークとして表される VPC ネットワークを、別の組織のプロジェクトなど、別のプロジェクトの単一のハブに接続できます。これにより、複数のプロジェクトや組織にまたがる大規模な VPC ネットワークに接続できます。

ユーザーは次のいずれかのタイプになります。

  • 1 つのプロジェクトのハブを所有するハブ管理者
  • 別のプロジェクトの VPC ネットワークをスポークとしてハブに追加したい VPC ネットワーク スポークの管理者またはネットワーク管理者。

ハブ管理者は、Identity and Access Management(IAM)権限を使用して、ハブに関連付けられた別のプロジェクトで VPC スポークを作成できるユーザーを制御します。VPC ネットワーク スポーク管理者は、ハブと異なるプロジェクトでスポークを作成します。これらのスポークは、作成時にはアクティブになりません。ハブ管理者は、それらを確認して、スポークを承認するか拒否するかを選択できます。ハブ管理者がスポークを承認すると、スポークがアクティブになります。

Network Connectivity Center は、ハブと同じプロジェクトで作成されたスポークを自動的に承認します。

ハブと異なるプロジェクトで VPC スポークを使用するハブの管理方法については、ハブ管理の概要をご覧ください。スポーク管理者の詳細については、スポーク管理の概要をご覧ください。

VPC Service Controls でのスポークの操作

Network Connectivity Center は、プロジェクト間および組織間のスポークで VPC Service Controls をサポートしています。ハブとは異なるプロジェクトのスポークの場合、新しい VPC Service Controls 境界が追加されると、その境界に違反する新しいスポークを追加できなくなりますが、その VPC Service Controls 境界を追加する前に追加した既存のスポークは引き続き機能します。

エクスポート フィルタを使用した VPC 接続

Network Connectivity Center を使用すると、すべてのスポーク VPC 接続をスポーク VPC 内のサブネットワークのサブセットに限定できます。接続は次のように制限できます。

  • IPv4 サブネット範囲の場合:
    • スポークは、すべての IPv4 サブネット範囲をアドバタイズするか、IPv4 サブネット範囲をアドバタイズしないように構成できます。
    • アドバタイズされないようにする IPv4 アドレス範囲を指定して、VPC ネットワークからアドバタイズできる CIDR 範囲のリストを設定できます。または、許可された CIDR 範囲のリストのみを指定して、許可された範囲を除くすべての範囲をブロックすることもできます。
  • IPv6 サブネット範囲の場合(プレビュー:
    • スポークは、すべての IPv6 サブネット範囲をアドバタイズするか、IPv6 サブネット範囲をアドバタイズしないように構成できます。

エクスポート フィルタを使用して、IPv4 サブネット範囲のみ、IPv6 サブネット範囲のみ、または IPv4 サブネット範囲と IPv6 サブネット範囲の両方を交換するように VPC スポークを構成できます。VPC ネットワークにサブネット スタックタイプが混在しているスポークについて考えてみましょう。IPv6 サブネット範囲のみをエクスポートするようにスポークを構成すると、デュアルスタック サブネットと IPv6 のみのサブネットの IPv6 範囲は交換されますが、IPv4 のみのサブネットとデュアルスタック サブネットの IPv4 サブネット範囲は交換されません。

エクスポートから除外する範囲

Google Cloud CLI の --exclude-export-ranges フラグまたは API の excludeExportRanges フィールドを使用して、IPv4 アドレス範囲のアドバタイズを防ぐことができます。指定された範囲に一致する IPv4 アドレス範囲は、ハブへのエクスポートから除外されます。このフィルタは、VPC ネットワーク内でプライベートにする必要のあるサブネットが存在する場合や、ハブ ルート テーブル内の他のサブネットと重複する可能性があるサブネットが存在する場合に便利です。

エクスポートに含める範囲

VPC スポークからアドバタイズできる IP アドレス範囲を設定するには、--include-export-ranges フラグまたは API の includeExportRanges フィールドを使用します。指定できる項目は次のとおりです。

  • すべての IPv4 サブネット範囲をアドバタイズするには、ALL_PRIVATE_IPV4_RANGES を指定します。
  • 特定の IPv4 サブネット範囲のみをアドバタイズするには、CIDR 範囲のリストを指定します。
  • すべての IPv6 サブネット範囲をアドバタイズするには、ALL_IPV6_RANGES を指定します。

IPv4 アドレス範囲の場合は、エクスポートに含めるフィルタを、エクスポートから除外するフィルタとともに使用すると、より正確な接続を確立できます。このフィルタリングにより、特定のサブネット範囲を VPC ネットワークからアドバタイズできるかどうかが決まります。

考慮事項

エクスポートから除外する範囲のフィルタとエクスポートに含める範囲のフィルタを使用する際には、次の点を考慮してください。

  • 含める範囲は互いに排他的である必要があります。つまり、含める範囲が重複してはなりません。たとえば、次の 3 つの IP アドレス範囲があるとします。

    Range 1: 10.100.64.0/18

    Range 2: 10.100.250.0/21

    Range 3: 10.100.100.0/22

    Range 1range 2 は重複しないため、含める範囲として有効です。一方、range 3range 1 の下にあり、重複が発生する可能性があるため、range 3 は無効です。

  • Network Connectivity Center では、エクスポートから除外するフィルタをネットワーク構成ポリシーですでに使用できるため、エクスポートに含めるフィルタとエクスポートから除外するフィルタの両方が、ネットワーク構成の有効な CIDR 範囲に影響します。エクスポートに含めるフィルタとエクスポートから除外するフィルタの両方を使用する場合は、含める IP アドレス範囲が除外する IP アドレス範囲のサブセットである必要があります。

  • デフォルトでは、すべての VPC 接続ポリシーで、含める CIDR 範囲が 0.0.0.0/0 になります。つまり、含めるフィルタを VPC スポークの作成時に指定しない場合、含める範囲が、有効な IPv4 範囲で定義されているすべての有効なプライベート IPv4 アドレスにデフォルトで設定されます。

  • 含める範囲を絞り込むには、除外する範囲を複数追加します。たとえば、包める範囲として 10.1.0.0/16 を指定し、除外する範囲として 10.1.100.0/2410.1.200.0/24 を指定した場合は、包めるフィルタと除外するフィルタの両方を組み合わせて接続が絞り込まれます。この場合、10.1.0.0/2410.1.99.0/2410.1.101.0/2410.1.199.0/2410.1.201.0/2410.1.255.0/24 のすべての範囲が含まれます。

  • 既存のサブネット範囲は引き続き正常に動作します。新しいサブネット範囲の作成時に、含める範囲および除外する範囲と重複すると、エラーが発生します。

無効な新しいサブネット範囲の例

次の例は、無効なサブネット範囲を示しています。

  • 除外する範囲との重複: 次の IP アドレス範囲があるとします。

    含める範囲: 10.0.0.0/8

    Exclude range 4: 10.1.1.0/24

    Subnet range 4: 10.1.0.0/16

    この場合、含める範囲に subnet range 4 が含まれますが、exclude range 4 のスーパーセットであるため、subnet range 4 は無効です。

  • 含める範囲との重複: 次の IP アドレス範囲があるとします。

    含める範囲: 10.1.1.0/24

    Subnet range 5: 10.1.0.0/16

    Subnet range 5 は含める範囲と重複しているため、無効です。

サブネットの作成プロセス中に無効なサブネット範囲を入力すると、次のような Invalid IPCidrRange エラーが発生します。

Invalid IPCidrRange: CIDR_RANGE conflicts with existing subnetwork SUBNET_RANGE in region REGION

事前定義されたトポロジ

Network Connectivity Center を使用すると、すべての VPC スポークに必要な接続構成を指定できます。次の 2 つの事前定義されたトポロジのいずれかを選択できます。

  • メッシュ トポロジ
  • スタートポロジ

gcloud network-connectivity hubs create コマンドを使用してハブを作成する際に、メッシュまたはスターの事前定義されたトポロジを選択します。トポロジが指定されていない場合、デフォルトはメッシュになります。ハブの作成時に設定した特定のハブのトポロジは変更できません。

スポークのトポロジ設定を変更するには、スポークを削除し、別のトポロジを使用する新しいハブで新しいスポークを作成します。

メッシュ トポロジ

メッシュ トポロジは、VPC スポーク間の大規模なネットワーク接続を提供します。このトポロジでは、すべてのスポークが相互に接続して通信できます。これらの VPC スポーク内のサブネットは、エクスポートから除外するフィルタを指定しない限り、完全に到達可能です。デフォルトでは、2 つ以上のワークロード VPC ネットワークがスポークとして Network Connectivity Center ハブに参加するように構成されると、Network Connectivity Center は各スポーク間のフルメッシュ接続を自動的に構築します。

メッシュ トポロジ内のすべてのスポークは、単一のデフォルト グループに属します。メッシュ トポロジは、VPC スポークタイプとハイブリッド スポークタイプでサポートされています。

次の図は、Network Connectivity Center のメッシュ トポロジ接続を示しています。

Network Connectivity Center のメッシュ トポロジ接続。
Network Connectivity Center のメッシュ トポロジ接続(クリックして拡大)

スタートポロジ

接続にスタートポロジを使用する場合、エッジスポークとそれに関連付けられたサブネットは、指定されたセンター スポークにのみ到達できます。一方、センター スポークは他のすべてのスポークに到達できます。これにより、エッジ VPC ネットワーク間でセグメンテーションと接続の分離が行われます。

VPC スポークは別のプロジェクトのハブに接続できるため、異なる管理ドメインの VPC スポークが含まれることもあります。ハブとは異なるプロジェクトにあるこれらのスポークは、Network Connectivity Center ハブ内の他のすべてのスポークと通信する必要がない場合があります。

スタートポロジは、次のユースケースで選択できます。

  • 異なる VPC ネットワークで実行され、相互接続は不要だが、中央の共有サービス VPC ネットワークを介してのみ VPC ネットワークにアクセスする必要があるワークロード。

  • トラフィックが一連の集中型ネットワーク仮想アプライアンス(NVA)を通過する必要がある、複数の VPC ネットワーク間の通信に対するセキュリティ制御。

次の図は、Network Connectivity Center のスタートポロジ接続を示しています。center-vpc-acenter-vpc-b はセンター グループに関連付けられ、edge-vpc-cedge-vpc-d はエッジグループに関連付けられています。この場合、スタートポロジを使用すると、edge-vpc-cedge-vpc-dcenter-vpc-acenter-vpc-b に接続され、サブネットをセンター グループに伝播できますが、相互には接続されません(edge-vpc-cedge-vpc-d の間は直接到達可能ではありません)。一方、center-vpc-acenter-vpc-b は相互に接続され、edge-vpc-cedge-vpc-d の両方にも接続されているため、センター グループ VPC からエッジグループ VPC への完全な到達が可能になります。

Network Connectivity Center のスタートポロジ接続。
Network Connectivity Center のスタートポロジ接続(クリックして拡大)

スポーク グループ

スポーク グループは、ハブに接続されているスポークのサブセットです。スタートポロジを使用して Network Connectivity Center を構成するには、すべての VPC スポークを 2 つの異なるグループ(ルーティング ドメインとも呼ばれます)に分割する必要があります。

  1. スポークのセンター グループ。ハブに接続されている他のすべてのスポークと通信します。
  2. スポークのエッジグループ。センター グループに属するスポークとのみ通信します。

VPC スポークは一度に 1 つのグループにのみ所属できます。グループは、ハブを作成するときに自動的に作成されます。

ハブ管理者は、gcloud network-connectivity hubs groups update コマンドを使用してスポーク グループを更新できます。ハブ管理者は、プロジェクト ID またはプロジェクト番号のリストを追加して、スポークの自動承諾を有効にできます。自動承諾を有効にすると、自動承諾プロジェクトのスポークが自動的にハブに接続され、個々のスポーク提案の審査は不要になります。

gcloud network-connectivity hubs groups list --hub コマンドを使用すると、特定のハブのネストされたリソースとしてセンター グループとエッジグループを一覧取得できます。メッシュ トポロジで作成されたハブの場合、出力でデフォルト グループが返されます。スタートポロジで作成されたハブの場合、出力ではセンター グループとエッジグループが返されます。

VPC スポークのメッシュ トポロジまたはスタートポロジを構成する方法の詳細については、ハブを構成するをご覧ください。

制限事項

このセクションでは、VPC スポークの一般的な制限事項と、別のプロジェクトのハブに接続している場合の制限事項について説明します。これらの制限は、プロデューサー VPC スポークにも適用されます。

VPC スポークの制限事項

  • VPC ネットワークは、Network Connectivity Center ハブまたは VPC ネットワーク ピアリングを介して排他的に相互接続できます。
  • 同じ Network Connectivity Center ハブに接続されている 2 つの VPC スポーク間で VPC ネットワーク ピアリングを使用することはできません。ただし、次の点を考慮してください。
    • プロデューサー VPC スポークには、同じハブ上の VPC スポークへのピアリング接続が必要です。プロデューサー VPC スポークとそのピアリングされた VPC スポークの間では、Network Connectivity Center を介した接続は確立されません。
    • VPC ネットワーク ピアリングを使用すると、Network Connectivity Center に接続している VPC スポークを Network Connectivity Center の一部ではない別の VPC にピアリングできます。
  • Network Connectivity Center と VPC ネットワーク ピアリングを使用して接続された VPC は推移的なものではありません。
  • VPC スポーク間の静的ルート交換はサポートされていません。
  • 他の VPC スポークの内部パススルー ネットワーク ロードバランサの仮想 IP アドレスを指すルートはサポートされていません。
  • VPC スポークの作成後に IPv4 サブネット範囲の export range filters を更新することはできません。
  • IPv6 ベースの内部パススルー ネットワーク ロードバランサは、VPC スポーク間で到達できません。
  • IPv6 動的ルート交換はサポートされていません。
  • 自動モードの VPC ネットワークは、VPC スポークとしてサポートされていません。自動モードからカスタム VPC ネットワークに切り替えると、VPC ネットワーク内の各リージョンのサブネット接頭辞を手動で定義できます。いったん更新すると、この操作を元に戻すことはできません。

動的ルート交換の制限事項

  • IPv4 のみ: Network Connectivity Center は、IPv4 動的ルートの交換のみをサポートしています。IPv6 動的ルートの交換はサポートされていません。

  • ハイブリッド スポークとスタートポロジの互換性: スタートポロジを使用するように構成されたハブは、ハイブリッド スポークに次の制限を適用します。

    • サイト間データ転送が有効になっているハイブリッド スポークは、センター スポーク グループでのみサポートされます。
    • サイト間転送が有効になっていないハイブリッド スポークは、センター スポーク グループまたはエッジ スポーク グループのいずれかに配置できます。
  • VPC スポークでもあるルーティング VPC ネットワーク: Network Connectivity Center は、すべてのルーティング VPC ネットワークが VPC スポークでない場合のみ、同じハブで 2 つ以上のルーティング VPC ネットワークをサポートします。Network Connectivity Center ハブに単一のルーティング VPC ネットワークがある場合、そのルーティング VPC ネットワークは必要に応じて VPC スポークにもできます。

    • 伝播された Private Service Connect 接続をハブのハイブリッド スポークを介してオンプレミス ネットワークで利用できるようにする必要がある場合は、ハブの単一のルーティング VPC ネットワークを VPC スポークとしても接続する必要があります。

    • 伝播された Private Service Connect 接続をハブのハイブリッド スポークを介してオンプレミス ネットワークで利用できるようにする必要がない場合は、ハブが 2 つ以上のルーティング VPC ネットワークをサポートできるように、ルーティング VPC ネットワークを VPC スポークとして構成しないことをおすすめします。

  • 動的ルートの相互作用のルール: ルーティング VPC ネットワーク内で、ハイブリッド スポークにネクストホップがある一意の動的ルートの宛先ごとに、宛先がその一意の動的ルートの宛先と完全に一致するかその宛先に収まる他のすべての動的ルート(優先度は問わない)のネクストホップの Cloud VPN トンネルまたは VLAN アタッチメントもハイブリッド スポークにあることを確認する必要があります。さらに、それらのハイブリッド スポークで同じサイト間データ転送設定(有効または無効)が使用されていることを確認する必要もあります。

    • 共通の宛先を持つ動的ルートのネクストホップの一部のみがハイブリッド スポークにある場合、Network Connectivity Center は、その宛先を使用する動的ルートをハブ上の VPC スポークと確実に交換できません。その結果、VPC スポークがそれらの動的ルートを受信できない可能性があります。

    • 一部のハイブリッド スポークでサイト間データ転送が有効になっているが、他のハイブリッド スポークでサイト間データ転送が無効になっている場合、Network Connectivity Center はハイブリッド スポークの動的ルートのすべてのネクストホップ間で ECMP を実行しません。共通の宛先を持つ動的ルートが存在するハイブリッド スポークのサイト間データ転送設定が一致しない場合、サイト間データ転送または VPC スポークとオンプレミス ネットワーク間の接続のネクストホップが想定どおりにならない可能性があります。

  • 動的ルートと静的ルートの相互作用のルール: ルーティング VPC ネットワーク内で、ハイブリッド スポークにネクストホップがある一意の動的ルートの宛先ごとに、宛先がその動的ルートの宛先と完全に一致するかその宛先に収まるローカル静的ルートが存在しないことを確認する必要があります(優先度は問わない)。

    • ルーティング VPC ネットワークのローカル静的ルートの宛先がハイブリッド スポークの動的ルートと同じである場合、VPC スポークがその動的ルートの宛先への接続を失うことがあります。

    • ルーティング VPC ネットワークのローカル静的ルートに、ハイブリッド スポークの動的ルートの宛先に収まる宛先がある場合、VPC スポークはその静的ルートの宛先への接続を失います。

VPC スポーク削除後のクールダウン期間

別のハブに接続された同一の VPC ネットワークに対して新しいスポークを作成する場合は、10 分以上のクールダウン期間を設ける必要があります。十分なクールダウン期間を設定しないと、新しい構成が有効にならない場合があります。VPC ネットワークが同じハブにスポークとして追加されている場合、このクールダウン期間は必要ありません。

割り当てと上限

動的ルート交換を使用する場合は、ハブあたりの動的ルート数の使用状況を慎重にモニタリングしてください。この割り当てでは、動的ルートの優先度やネクストホップに関係なく、宛先(プレフィックス)による使用量のみがカウントされます。この割り当ての使用量が上限を超えると、Network Connectivity Center は宛先ごとにルートを破棄します。宛先が破棄されると、その宛先を含む動的ルートはすべて(優先度やネクストホップに関係なく)ハブに送信されなくなります。

割り当ての詳細については、割り当てと上限をご覧ください。

課金

スポーク時間

スポーク時間は、スポーク リソースが存在するプロジェクトに課金され、標準のスポーク時間の料金に従います。スポーク時間は、スポークが ACTIVE 状態にある場合にのみ課金されます。

アウトバウンド トラフィック

アウトバウンド トラフィックは、トラフィックの発生元のスポーク リソースのプロジェクトに課金されます。トラフィックがプロジェクトの境界を越えるかどうかに関係なく、料金は同じです。

サービスレベル契約

Network Connectivity Center サービスレベル契約については、Network Connectivity Center サービスレベル契約(SLA)をご覧ください。

料金

料金については、Network Connectivity Center の料金をご覧ください。

次のステップ