VPCピアリングとルーティング
1)ピアリングとそれが適切な理由
VPC/VNet Peeringは、プロバイダのプライベートネットワークを単一のポイントツーポイントアドレス空間に結合し、プライベートトラフィック(インターネットなし、ピア間のNATなし)を提供します。典型的な場合:- 共通のプライベート接続で環境とドメイン(prod/stage/dev)を分離する。
- 共通のプラットフォーム(ロギング、KMS/Vault、アーティファクト)を共有ネットワークに持ち出します。
- アプリケーションからプライベートパス(ハブ/エンドポイント経由)を介して管理されたPaaSへのアクセス。
ピアリングではなくハブの方が良い場合:10〜20以上のネットワーク、トランジットルーティング、集中排出、クラウド間通信の必要性→Transit Gateway/Virtual WAN/Cloud Routerを使用します。
2)モデルと制約
2.1ピアリングの種類
域内ピアリング-地域内、最小限の遅延とコスト。
地域間のピアリング-地域間のトラフィックは通常支払われます。
クロスプロジェクト/アカウント-異なるアカウント/プロジェクト間のピアリング(委任付き)。
2.2トランジットとNAT
クラシックVPC/VNetピアリングはトランジティブではありません。A↔BとB↔CネットワークはA↔Cを意味するものではありません。
トランジット用の中間ネットワーク経由のNAT-アンチパターン(ソースIP、複雑な監査を破る)。
トランジット-ハブバス:AWS Transit Gateway (TGW)、 Azure Virtual WAN/Hub、 GCP Cloud Router/HA VPN/Peering Router。
2.3重複するCIDR
ピアリングは交差プレフィックスをサポートしていません。クロッシングが避けられない場合は、以下を適用してください:- アドレスReplan(最良のオプション);
- 一方的なスキームを持つNAT ドメイン/プロキシVPC(監査とロギングを考慮に入れて);
- 特定のPaaS-L3アクセスなしのPrivateLink/PSC。
3)アドレスとルートデザイン
3.1 CIDRプランニング
単一のスーパーネット(例えば、'10。0.0.0/8')→'region/env/vpc'で分割します。
将来のVPC/growth-buffersのリザーブ範囲。
IPv6-先に計画する:VPCでは'/56'、サブネットでは'/64'。
3.2ルーティング
ルートテーブル:各VPC/サブネット上のピアハブ上の明示的なルート。
優先順位:より具体的な接頭辞が勝つ。ピアリングを通してキャッチオールを避けます。
ブラックホール保護:重複/廃止されたルートをマークしてクリーンにします。
3.3ドメインと役割
スポーク(アプリケーション)↔ハブ(共通サービス、出口、検査)。
ご宴会のみspoke↔hub;spoke↔spoke-ハブを介して(セグメンテーションとコントロール)。
4)トポロジーパターン
4.1「シンプル」メッシュ(≤ 5 VPC)
ピンからピンへの直接宴会(A↔B、 A↔C……)。長所:最小コンポーネント;cons: O (N ²)リンクとルール。
4.2ハブ&スポーク
Hub VPC/VNetのすべてのスポークのごちそう;ハブ-TGW/Virtual WAN/Cloud Router、 NAT/egress、検査。スケーラブルで管理が簡単。
4.3マルチリージョン
各地域のローカルハブ。ハブ間-地域間ピアリングまたはバックボーン(TGW-to-TGW/VWAN-to-VWAN)。
5)セキュリティとセグメンテーション
ホストのステートフル:SG/NSGは主要な障壁です;NACL/subnetwork ACL-粗いガード/拒否リスト。
メッシュ/プロキシ(Istio/Envoy/NGINX)のL7ポリシー-mTLS/JWT/クレームによる承認。
排出制御:スポークは、排出ゲートウェイ/PrivateLinkを通じてのみ、インターネットを直接「見る」べきではありません。
VPC間トラフィックのフローログとハブ検査(GWLB、 IDS/IPS)。
6) DNSスプリットホライズン
各プライベートゾーン-希望のVPC (プライベートホストゾーン/プライベートDNS/ゾーン)での可視性。
PrivateLink/PSC経由のPaaSの場合-プライベートIPエンドポイントへのプライベートエントリ。
条件付き転送 オンプレミス クラウド地域 地域 。
名前:'svc。ENV。地域。内部的に。corp'-PIIなし;feilerの下のTTL (30-120)を修理して下さい。
7)観察可能性およびテスト
メトリクス:SG/NSG、ピアごとのバイト、リージョン間のRTT/ジッタ、トップトーカーでの承認/拒否。
ログ:VPC Flow Logs/NSG Flow Logs SIEMでは、L7↔L3相関を'trace_id'でトレースします。
到達性試験:異なるサブネット/AZ/リージョンからの合成/DBポートをTCP/443します。到達可能性の検光子。
カオスネットワーク:ピア/ハブ間の遅延/損失;タイムアウト/リトレイ/idempotencyチェック。
8)性能および費用
地域間はほとんど常に充電されます。前もってegressを読み込みます(ログ/バックアップではより高価です)。
MTU/PMTUD:標準MTUはプロバイダ内にありますが、境界(VPN、 FW、 NAT-T)ではMSSクランプを検討してください。
ボトルネックのない検査スケールアップ(GWLB/スケールセット)。ハブのためのECMP。
キャッシュ/エッジとSWRは、地域間交通を削減します。
9)クラウドの機能と例
9.1 AWS (VPCピアリング/トランジットゲートウェイ)
VPCピアリング:ピアリング接続を作成し、サブネットテーブルにルートを追加します。
定期的なピアリングを通過するトランジットはありません。トランジットおよび集中型モデル-トランジットゲートウェイ。
hcl resource "aws_vpc_peering_connection" "a_b" {
vpc_id = aws_vpc. a. id peer_vpc_id = aws_vpc. b. id peer_owner_id = var. peer_account_id auto_accept = false tags = { Name = "a-b", env = var. env }
}
resource "aws_route" "a_to_b" {
route_table_id = aws_route_table. a_rt. id destination_cidr_block = aws_vpc. b. cidr_block vpc_peering_connection_id = aws_vpc_peering_connection. a_b. id
}
9.2 Azure (VNetピアリング/仮想WAN)
VNetピアリング(グローバルを含む):フラグ転送されたトラフィックを許可する、ハブスキームにリモートゲートウェイを使用する。
ハブとトランジットの場合-ルートテーブルとポリシーを備えた仮想WAN/ハブ。
bash az network vnet peering create \
--name spokeA-to-hub --vnet-name spokeA --remote-vnet hub \
--resource-group rg --allow-vnet-access --allow-forwarded-traffic
9.3 GCP (VPCピアリング/クラウドルータ)
トランジットなしでPeering VPC;Cloud Router+HA VPN/ピアリングルータ。
Hierarchical FWのorg-guardrails。
10)ピアツーピアネットワークにおけるKubernetes
スポークのクラスタ、共通サービス(ログ/ストレージ/アーティファクト)-ハブ;プライベートアドレスへのアクセス。
NetworkPolicy "deny-all'とハブ/PrivateLinkの明示的な出力。
VPC間でPod CIDRを「運ばない」;ノードCIDRをルーティングし、Ingress/Gatewayを使用します。
11)トレーブルシューティング(チートシート)
1.CIDRは重複しませんか?スーパーセット/古いサブネットをチェックします。
2.ルートテーブル:パスは両方の方法がありますか?交通を傍受するより具体的なルートはありますか?
3.SG/NSG/NACL: stateful-in/out match?サブネットACLはリバーストラフィックをブロックしますか?
4.DNS:正しいプライベートレコード/フォワーダー?両方のネットワークから'dig+short'をチェックします。
5.MTU/MSS/PMTUD:断片化とサイレントタイムアウトはありますか?
6.フローログのチェック:SYN/SYN-ACK/ACKはありますか?誰が落ちたの?
7.地域間:ピアリングクォータ/リミット/組織ポリシー/ルーティングタグ。
12) Antipatterns
ハブのない数十人のピアの「ランダム」メッシュ→困難とACLの爆発が通過します。
重なり合うCIDR「なぜかNATを圧倒する」→監査/エンドツーエンドの識別ブレーク。
各スポークのパブリックエグレス→制御されていない表面とコスト。
分割地平線DNS→名前漏れ/壊れた解像度の欠如。
ワイドルート'0。0.0.0/0'ピア→予期しないトラフィック非対称性。
IaCとリビジョンなしでコンソールで手動で編集します。
13) iGaming/Financeの詳細
PCI CDEおよび支払の回路-点検のハブを通してだけ;バイパスspoke↔spokeはありません。
データ常駐:PII/トランザクションログ-管轄内;地域間-集計/匿名。
Multi-PSP: PrivateLink/private channels to PSP、 allowlist FQDNおよびmTLS/HMACによる集中排出プロキシ。
監査/WORM:フローログと変更されていないストレージのルート変更、標準に従った保持。
SLOセクション:地域/VPC/テナントごと;「脱出漏れ」と地域間RTTの劣化を警告します。
14) Prod Readinessチェックリスト
- CIDR非交差計画(IPv4/IPv6)、成長プール予約。
- ハブとスポークのトポロジー;ごちそう-唯一のspoke↔hub;TGW/VWAN/Cloud Router経由で転送します。
- ルートテーブル:明示的なパス、ピア経由のキャッチオールなし、ブラックホール制御。
- 適用されるSG/NSG/NACL;メッシュ内のL7ポリシー。/PrivateLinkハブを介してのみ出力します。
- プライベートDNS/PHZ構成;conditional-forwarders между on-prem/cloud/regionsです。
- フローログが有効になっています。ピア/リージョン別のダッシュボード;到達性合成およびPMTUDテスト。
- ルール/ルート/DNSのIaC (Terraform/CLI)とPolicy-as-Code (OPA/Conftest)。
- 文書化されたrunbook'と(ピアを追加し、ルートをロールアウトし、スポークを無効にします)。
- 演習:ハブ/ごちそうを無効にし、ネットワークパスの実際のRTO/RPOを測定します。
- iGaming/Financeの場合:PCI分離、PSPへのPrivateLink、 WORM監査、管轄区域によるSLO/アラート。
15) TL;DRについて
シンプルなポイントツーポイントのプライベート接続にはVPC/VNet Peeringを使用しますが、トランジットには依存しません。ハブ(TGW/VWAN/Cloud Router)が必要です。交差のないCIDRを計画し、ルートを明示的に特定し、ステートフルなSG/NSGおよびL7ポリシーをメッシュ、DNS-分割地平線に適用します。フローログ、合成、およびPMTUDチェックを有効にします。iGaming/Finance-PCI分離、PSPへのプライベートチャネル、および変更不可能な監査。