View a markdown version of this page

集中 IPv4 出力に NAT ゲートウェイを使用する - スケーラブルで安全なマルチ VPC AWS ネットワークインフラストラクチャの構築

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

集中 IPv4 出力に NAT ゲートウェイを使用する

NAT ゲートウェイは、マネージドネットワークアドレス変換サービスです。すべてのスポーク VPC に NAT ゲートウェイをデプロイすると、デプロイするすべての NAT ゲートウェイに対して時間単位の料金が発生するため (Amazon VPC の料金を参照)、コストがかかる可能性があります。NAT ゲートウェイを一元化することは、コストを削減するための実行可能なオプションです。一元化するには、次の図に示すように、ネットワークサービスアカウントに個別の Egress VPC を作成し、Egress VPC に NAT ゲートウェイをデプロイし、スポーク VPCs からのすべての Egress トラフィックを Transit Gateway または CloudWAN を使用して Egress VPC に存在する NAT ゲートウェイにルーティングします。

注記

Transit Gateway を使用して NAT ゲートウェイを一元化する場合、すべての VPC で NAT ゲートウェイを実行する分散アプローチと比較して、追加の Transit Gateway データ処理料金が発生します。エッジケースによっては、VPC から NAT ゲートウェイを介して大量のデータを送信する場合、Transit Gateway データ処理料金を回避するために、VPC で NAT をローカルにしておく方がコスト効率の高いオプションになる場合があります。

分散型高可用性 NAT ゲートウェイアーキテクチャを示す図

分散型高可用性 NAT ゲートウェイアーキテクチャ

Transit Gateway を使用した集中型 NAT ゲートウェイを示す図 (概要)

Transit Gateway を使用した集中型 NAT ゲートウェイ (概要)

Transit Gateway を使用した集中型 NAT ゲートウェイを示す図 (ルートテーブル設計)

Transit Gateway を使用した一元化された NAT ゲートウェイ (ルートテーブル設計)

この設定では、スポーク VPC アタッチメントはルートテーブル 1 (RT1) に関連付けられ、ルートテーブル 2 (RT2) に伝達されます。2 つの VPCs 間の通信を禁止するブラックホールルートがあります。VPC 間通信を許可する場合は、RT1 から10.0.0.0/8 -> Blackholeルートエントリを削除できます。これにより、トランジットゲートウェイ経由で通信できるようになります。スポーク VPC アタッチメントを RT1 に伝達することもできます (または、1 つのルートテーブルを使用してすべてを関連付け/伝達することもできます)。これにより、Transit Gateway を使用して VPCs 間の直接トラフィックフローが可能になります。

RT1 にすべてのトラフィックを Egress VPC にポイントする静的ルートを追加します。この静的ルートのため、Transit Gateway は、送信 VPC の ENIs を介してすべてのインターネットトラフィックを送信します。エグレス VPC に入ると、トラフィックはこれらの Transit Gateway ENIs が存在するサブネットルートテーブルで定義されたルートに従います。サブネットルートテーブルに、同じアベイラビリティーゾーン内のそれぞれの NAT ゲートウェイを指すルートを追加して、クロスアベイラビリティーゾーン (AZ) トラフィックを最小限に抑えます。NAT ゲートウェイサブネットルートテーブルには、ネクストホップとしてインターネットゲートウェイ (IGW) があります。リターントラフィックをフローバックするには、すべてのスポーク VPC バインドトラフィックをネクストホップとして Transit Gateway にポイントする静的ルートテーブルエントリを NAT ゲートウェイサブネットルートテーブルに追加する必要があります。

高可用性

高可用性を実現するには、複数の NAT ゲートウェイ (各アベイラビリティーゾーンに 1 つずつ) を使用する必要があります。NAT ゲートウェイが使用できない場合、影響を受けた NAT ゲートウェイを通過するそのアベイラビリティーゾーンでトラフィックがドロップされる可能性があります。1 つのアベイラビリティーゾーンが使用できない場合、そのアベイラビリティーゾーンの Transit Gateway エンドポイントと NAT ゲートウェイは失敗し、すべてのトラフィックは他のアベイラビリティーゾーンの Transit Gateway エンドポイントと NAT ゲートウェイエンドポイントを経由して流れます。

セキュリティ

セキュリティグループは、ソースインスタンス、Transit Gateway ルートテーブルのブラックホールルート、および NAT ゲートウェイが配置されているサブネットのネットワーク ACL に依存します。たとえば、お客様は NAT Gateway パブリックサブネット (複数可) の ACLs を使用して、送信元または送信先の IP アドレスを許可またはブロックできます。または、NAT Gateway を と共に使用 AWS Network Firewall して、次のセクションで説明する一元的な出力を行い、この要件を満たすこともできます。

スケーラビリティ

単一の NAT ゲートウェイは、割り当てられた IP アドレスごとに一意の送信先ごとに最大 55,000 の同時接続をサポートできます。クォータ調整をリクエストして、最大 8 つの割り当てられた IP アドレスを許可し、1 つの送信先 IP とポートへの同時接続を 440,000 回許可できます。NAT ゲートウェイは 5 Gbps の帯域幅を提供し、自動的に 100 Gbps にスケールします。トランジットゲートウェイは通常、ロードバランサーとして機能しず、複数のアベイラビリティーゾーンの NAT ゲートウェイ間でトラフィックを均等に分散しません。トランジットゲートウェイ全体のトラフィックは、可能であればアベイラビリティーゾーン内に留まります。トラフィックを開始する Amazon EC2 インスタンスがアベイラビリティーゾーン 1 にある場合、トラフィックはエグレス VPC の同じアベイラビリティーゾーン 1 の Transit Gateway Elastic Network Interface から流れ出し、Elastic Network Interface が存在するサブネットルートテーブルに基づいてネクストホップに流れます。ルールの完全なリストについては、Amazon Virtual Private Cloud ドキュメントの NAT ゲートウェイを参照してください。

詳細については、AWS Transit Gateway を使用して複数の VPCs から単一のインターネット出口ポイントを作成するブログ記事を参照してください。