背景
例として以下のようなネットワーク構成が要求されている場合:
- 1つのVPCに、2つの パブリックサブネット と 2つの プライベートサブネット
- 各サブネットは、異なるアベイラビリティゾーン(AZ) に分散
- IPv4 CIDRブロックを使用
- パブリックサブネットは インターネットゲートウェイ経由で外部接続
- プライベートサブネットに配置された EC2インスタンスがインターネット経由でソフトウェア更新 を行える必要あり
- 高可用性(HA)構成が求められる(単一障害点の回避)
要件
項目 | 内容 |
---|---|
インターネットアクセス | プライベートサブネット内のEC2がアップデートや外部通信を可能にする |
高可用性 | 単一のNATに依存せず、AZ障害時でも通信を継続できる構成にする |
解決策(AWS推奨構成)
対象 | 対応策 |
---|---|
各AZのパブリックサブネット | それぞれに 1つずつNATゲートウェイ を作成 |
プライベートサブネット | 対応するAZのNATゲートウェイに ルートテーブルを紐付け |
通信 | プライベートEC2 → NAT GW → インターネット(経由:パブリックサブネット) |
ポイント解説
-
なぜNATが必要?
プライベートサブネットは直接インターネットと通信できないため、NAT(Network Address Translation)を介して外部へリクエストを転送します。 -
なぜ複数NATゲートウェイ?
単一のNAT Gatewayを使うと、そのAZが落ちた場合に全通信が止まるリスクがあります。各AZに配置することで、可用性を向上させます。 -
パブリックサブネットとの違い
パブリックサブネット内のEC2はインターネットゲートウェイを介して直接インターネットと通信できますが、プライベート側ではNAT経由が必須です。
- 各プライベートサブネットは同じAZのNAT Gatewayにルーティング
- NAT Gatewayはパブリックサブネットに配置され、IGW経由で通信
まとめ
この構成により、以下の要件をすべて満たすことができます:
要件 | 対応内容 |
---|---|
プライベートサブネットのインターネットアクセス | NAT Gateway経由で可能にする |
高可用性構成 | 各AZにNATを設置し、障害時も他AZから通信継続可能 |