Amazon VPC
Amazon VPC(Virtual Private Cloud)は、AWS クラウド内に作成できる「自分専用の仮想ネットワーク」です。外部から隔離された安全な空間でリソースを配置・管理できます。
概要
VPC とは、AWS のクラウド上に用意した「自分だけのプライベートネットワーク空間」です。インターネット上のデータセンターに自前のネットワークを構築するイメージで理解するとわかりやすいでしょう。VPC の中に EC2 インスタンスやデータベースなどのリソースを配置し、外部との通信を細かく制御できます。
VPC はリージョン単位で作成します。作成時に IP アドレスの範囲(CIDR ブロック。例: 10.0.0.0/16)を指定し、その範囲内でリソースに IP アドレスを割り当てます。
CP試験で押さえるポイント
- VPC はリージョン単位で作成する「自分専用の仮想ネットワーク」
- サブネットはパブリックとプライベートに分けて設計する
- インターネットゲートウェイを VPC にアタッチするとインターネット接続が可能になる
- セキュリティグループはステートフル、ネットワーク ACL はステートレス(CP 最頻出)
- NATゲートウェイでプライベートサブネットからの外向き通信を許可できる
- デフォルト VPC は各リージョンに自動作成されており、すぐに利用できる
サブネット:パブリックとプライベート
サブネットは VPC 内を細かく区切ったネットワーク区画です。アベイラビリティゾーン(AZ)単位で作成します。サブネットには大きく2種類あります。
| 種類 | 特徴 | 主な用途 |
|---|---|---|
| パブリックサブネット | インターネットゲートウェイへのルートがあり、インターネットと直接通信できる | Web サーバー、ロードバランサー |
| プライベートサブネット | インターネットへの直接ルートがなく、外部からアクセスできない | データベース、アプリケーションサーバー |
セキュリティを高めるために、インターネットに公開が必要なリソースだけをパブリックサブネットに置き、データベースなどの重要なリソースはプライベートサブネットに隔離するのが一般的な設計です。
インターネットゲートウェイと NATゲートウェイ
インターネットゲートウェイ(IGW)は VPC とインターネットをつなぐ「玄関口」です。VPC に IGW をアタッチし、サブネットのルートテーブルに IGW へのルートを追加すると、そのサブネットがパブリックサブネットになります。
NATゲートウェイは、プライベートサブネットのリソースが外部(インターネット)に向けて通信できるようにする仕組みです。たとえば、プライベートサブネットの EC2 インスタンスがソフトウェアのアップデートを取得したい場合に使います。外部からプライベートサブネットへの「入ってくる通信」は遮断されるため、安全性を保ちながら外向き通信だけを許可できます。NATゲートウェイはパブリックサブネットに配置します。
セキュリティグループとネットワーク ACL の比較(CP 最頻出)
VPC 内のトラフィックを制御する仕組みとして、セキュリティグループとネットワーク ACL(NACL)の2つがあります。この2つの違いは CP 試験で最も問われるポイントのひとつです。
| 項目 | セキュリティグループ | ネットワーク ACL |
|---|---|---|
| 適用範囲 | インスタンス(ENI)単位 | サブネット単位 |
| ステート | ステートフル(戻りの通信を自動許可) | ステートレス(戻りの通信も明示的に許可が必要) |
| ルールの種類 | 許可ルールのみ | 許可・拒否ルールの両方 |
| ルール評価 | すべてのルールを評価 | 番号順に評価(最初に一致したルールが適用) |
| デフォルト動作 | すべて拒否(許可ルールがなければ遮断) | すべて許可(デフォルト NACL の場合) |
「ステートフル」とは、アウトバウンドのリクエストに対する応答トラフィックを自動的に許可することです。セキュリティグループはステートフルなので、行きのルールを設定すれば戻りは自動で許可されます。一方、NACL はステートレスなので、行きと戻りの両方向のルールを設定する必要があります。
関連サービスとの違い・使い分け
VPC ピアリングは2つの VPC をプライベートに接続する機能です。同一リージョン・異なるリージョン間でも接続でき、異なる AWS アカウント間でも利用できます。ただし推移的なルーティング(A→B→C 経由の接続)はできない点に注意が必要です。
VPC 内の通信制御をさらに細かく行いたい場合はセキュリティグループと NACL を組み合わせて使います。外部拠点との専用線接続には AWS Direct Connect が適しています。
確認問題
付録:公式ドキュメント・Black Belt 動画
さらに深く学びたい方は、AWS公式の以下のリソースを参照してください(いずれも外部サイトが開きます)。