今回はAWSに仮想プライベートネットワークを構築できる、VPC(Virtual Private Cloud)のつまずきポイントについて解説する。VPCでは、Webサーバー用の外部公開サブネットやDBサーバー用の内部サブネットなどを作成し、オンプレミスと同等のシステム構成を再現可能だ。

 VPC内に配置したEC2インスタンスは任意のローカルIPアドレスを付与できるのも大きな特徴だ。作成したVPCと、自社やデータセンターをインターネットVPNや「Direct Connect」と呼ばれる閉域網接続でよりセキュアに通信させることも可能なので、AWSの導入を検討している企業から非常に人気の高いサービスである。

 このように便利なVPCにも初心者がつまずくポイントが存在する。以降で解説する。

つまずきポイント1:インターネットから接続できない

 EC2インスタンスやRDSを起動すると、自動的にPublic DNSと呼ばれるグローバルIPアドレスが付与されて、ユーザーはインターネット経由ですぐに利用することが可能だ。しかし、ユーザー自身で作成したVPCでは、VPC内に起動したEC2やRDSに自動的にグローバルIPアドレスが割り当てられることがない。するとユーザーはEC2インスタンスやRDSにインターネット経由で接続できない、あるいはVPC内のEC2インスタンスからインターネット経由で別サーバーにアクセスできない、といった問題が発生する。

 インターネットVPNや閉域網接続で通信を行う場合には特に問題にはならないが、VPCではない環境(クラシック環境という)に起動したEC2やRDSと同様に考えて混乱する初心者は多い。

 前述の通り、VPCは仮想プライベートネットワークを提供するサービスなのでインターネット接続も管理が必要なのだ。EC2を解説した際にElastic IPアドレスという機能を紹介したが、VPC内のEC2にインターネット接続をさせる場合には、まずこれを設定する必要がある。

 また、インターネットゲートウェイ(IGW)と呼ぶ外部アクセスのための仕組みを作成して、VPCとIGWの関連付けを行う。その後にインターネット接続させるサブネットワークに対してルーティングを設定することで、初めてインターネット接続が実現する。上記のどの設定が抜けていても、インターネット接続ができないので注意が必要だ。