AWSのVPCネットワーク設計の話です。
VPCのパブリックサブネットからインターネットと通信する(インターネットからのアクセス、もしくはインターネットへのアクセス)には、
- インターネットゲートウェイ(IGW)と
- グローバルIPアドレス(自動割り当てパブリックIP、もしくはElastic IP)
を使用する必要がります、これがAWSでのパブリックサブネット(DMZサブネット)のネットワーク設計になります。
では、インターネットからアクセスはさせたくないが、インターネットへのアクセスはさせたいプライベートサブネットを設計するにはどう配置したらよいでしょうか?
その時に、役に立つのが
- NATゲートウェイ
機能です。
レジュメ
結論、パブリックサブネットにNATゲートウェイを配置し、プライベートサブネットからNATゲートウェイにルーティングする
どんなサブネットにでも「Nat gateway」を作成してインターネットへアクセスできるわけでは無く、Natゲートウェイの利用には
- IGWへルーティングしたパブリックのサブネットが必要で
- そのパブリックなサブネットに「Nat Gateway」を配置し
- 「Nat Gateway」を利用するパブリックでは無いサブネット
を用意する必要があります。
AWSでインターネットにアクセスできないNatゲートウェイのダメなサブネット配置例
このような配置をしてしまった場合、残念ながらインスタンスからインターネットにはアクセスできません。
どんなサブネットにでも、Nat gatewayを作成してインターネットへアクセスできるわけでは無く、
- IGWにルーティングがあるパブリックサブネットにNATゲートウェイを設置しなければダメで
- ルーティングの兼ね合いからインスタンスはパブリックとは別のサブネット配置する必要があります。
上記、Nat Gateway配置もAWS画面から構築出来てしまうので、紛らわしいですよね。(作成、AWS設定できてしまうが、インターネットにはアクセス出来ない。)
完全にプライベートなサブネット作成例。インターネットから分離
- インターネットから直接アクセスさせない
- インターネットに直接アクセスしない
といった、完全にプライベートなサブネットを作成したい場合、上記のようなVPCネットワーク設計になります。
この場合、運用が大変になるので、ProxyサーバーやWSUSサーバーが別途ほしくなりますね。