▪️目的

AWSでEC2などのサーバーを構築していると、「VPC」という言葉が出てきます。

EC2がAWS上の仮想サーバーなのに対して、VPCはEC2などのAWSリソースを配置する仮想的なネットワーク環境です。

しかし、

  • VPCってそもそも何?
  • なぜVPCが必要なの?
  • サブネットって何?
  • インターネットゲートウェイとは?
  • ルートテーブルって何?
  • VPCとEC2はどういう関係なの?

など、AWSを初めて学ぶ方には分かりにくい部分も多いと思います。

そこで今回は、AWS初心者の方に向けて、VPCの基本的な仕組みや、VPCを構成する代表的な要素について解説します。


▪️VPCとは?

VPCとは、

Amazon Virtual Private Cloud

の略称です。

AWS上に作成できる仮想ネットワークです。

簡単にいうと、

「AWS上で自分専用のネットワーク環境を作るための仕組み」

と考えると分かりやすいでしょう。

例えば、EC2などのAWSリソースを配置するために、VPCを作成します。

イメージすると以下のようになります。

AWS
 │
 └─ VPC
     │
     ├─ Subnet
     │    └─ EC2
     │
     └─ Subnet
          └─ EC2

VPCの中にサブネットを作成し、そのサブネットの中にEC2などのリソースを配置します。


▪️なぜVPCが必要なの?

では、なぜAWS上に仮想ネットワークを作る必要があるのでしょうか。

例えば、企業のシステムでは、

  • どのサーバーをインターネットからアクセス可能にするか
  • どのサーバーを外部から直接アクセスできないようにするか
  • サーバー同士をどのように通信させるか
  • どのネットワークからどのネットワークへ通信を許可するか

といったネットワーク設計が必要になります。

VPCを利用することで、AWS上に自分たちのネットワーク環境を作り、IPアドレスやサブネット、ルーティングなどを設計できます。

例えば、

                  インターネット
                       │
                       ↓
              ┌────────────────┐
              │      VPC       │
              │                │
              │  Public Subnet │
              │      │         │
              │     EC2        │
              │                │
              │ Private Subnet │
              │      │         │
              │     RDS        │
              └────────────────┘

のように、外部からアクセスさせるリソースと、外部から直接アクセスさせたくないリソースを分けることができます。


▪️VPCのCIDRとは?

VPCを作成するときには、VPCで利用するIPアドレスの範囲を指定します。

例えば、

10.0.0.0/16

のようなCIDR形式で指定します。

CIDRについて詳しく理解するにはIPアドレスやサブネットの知識が必要になります。

そのため、最初は、

「VPCの中で使用するIPアドレスの範囲を決める」

と考えるとよいでしょう。

例えば、

VPC
10.0.0.0/16

というVPCを作成した場合、この範囲をさらにサブネットへ分割して利用できます。


▪️サブネットとは?

VPCを理解するうえで重要なのが**サブネット(Subnet)**です。

サブネットとは、VPCのIPアドレス範囲をさらに分割したネットワークです。

例えば、

VPC
10.0.0.0/16
│
├─ Public Subnet
│   10.0.1.0/24
│
└─ Private Subnet
    10.0.2.0/24

のように、VPCの中に複数のサブネットを作成できます。

サブネットを分けることで、AWSリソースを異なるネットワーク領域に配置できます。


▪️Public SubnetとPrivate Subnet

AWSでは、サブネットを説明するときに、

Public Subnet

と

Private Subnet

という言葉がよく使われます。

ただし、AWSに「Public Subnet」という専用の設定があるわけではありません。

一般的には、

インターネットゲートウェイへのルートを持つサブネットをPublic Subnet

として扱います。

一方、

インターネットゲートウェイへの直接のルートを持たないサブネットをPrivate Subnet

として扱います。

例えば、

                Internet
                    │
                    ↓
          Internet Gateway
                    │
             ┌──────┴──────┐
             │     VPC     │
             │             │
             │ Public      │
             │ Subnet      │
             │    ↓        │
             │   EC2       │
             │             │
             │ Private     │
             │ Subnet      │
             │    ↓        │
             │   RDS       │
             └─────────────┘

という構成が考えられます。


▪️Internet Gatewayとは?

Internet Gateway(IGW)は、VPCとインターネットの間で通信するためのゲートウェイです。

例えば、Public Subnetに配置したEC2からインターネットへ通信したり、インターネットからEC2へ通信したりする場合に利用されます。

イメージすると、

インターネット
      │
      ↓
Internet Gateway
      │
      ↓
     VPC
      │
      ↓
Public Subnet
      │
      ↓
     EC2

となります。

ただし、Internet GatewayをVPCに接続しただけで、すべてのEC2がインターネットと通信できるわけではありません。

ルートテーブルやEC2のパブリックIP、セキュリティグループなど、複数の条件が関係します。


▪️ルートテーブルとは?

VPC内の通信を理解するうえで重要なのがルートテーブルです。

ルートテーブルは、

「どの宛先への通信を、どこへ送るのか」

というルーティング情報を定義します。

例えば、

宛先             次の経路
────────────────────────
10.0.0.0/16      local
0.0.0.0/0        Internet Gateway

というルートがあるとします。

この場合、

10.0.0.0/16
     ↓
VPC内部へ

0.0.0.0/0
     ↓
Internet Gatewayへ

というように通信先によって経路が決まります。

ネットワークの勉強で学んだ「ルーティング」が、AWSのVPCでも登場します。


▪️サブネットとルートテーブルの関係

ここで重要なのが、

サブネットとルートテーブルはどのように関係しているのか

という点です。

サブネットには、ルートテーブルが関連付けられます。

例えば、

VPC
 │
 ├─ Public Subnet
 │      │
 │      └─ Public用Route Table
 │             │
 │             └─ Internet Gateway
 │
 └─ Private Subnet
        │
        └─ Private用Route Table

という構成を作れます。

Public Subnet側のルートテーブルにはインターネットゲートウェイへのルートを設定し、Private Subnet側では直接インターネットゲートウェイへ向かうルートを設定しない、といった構成が考えられます。


▪️VPCとEC2の関係

ここまでの内容を、EC2の記事とつなげて考えてみましょう。

EC2はAWS上の仮想サーバーです。

一方、VPCはそのEC2などを配置するネットワーク環境です。

AWS
 │
 └─ VPC
     │
     ├─ Public Subnet
     │    │
     │    └─ EC2
     │
     └─ Private Subnet
          │
          └─ EC2

つまり、

VPC → Subnet → EC2

という関係になります。

EC2だけを理解するのではなく、EC2がどのネットワークに配置され、どのような経路で通信するのかまで理解することが重要です。


▪️VPCのセキュリティ

VPCでは、ネットワークの通信を制御するための仕組みも利用します。

代表的なものが、

Security Group

と

Network ACL(NACL)

です。

♦︎Security Group

Security Groupは、EC2などのリソースに対する通信を制御します。

例えば、

Internet
   │
   │ HTTPS : 443
   ↓
Security Group
   │
   ↓
  EC2

のように、許可する通信を設定できます。

EC2の記事でも紹介したように、EC2へのアクセス制御を行ううえで重要な機能です。


♦︎Network ACL

Network ACL(NACL)は、サブネット単位で通信を制御します。

そのため、

Security Group → リソース単位

NACL → サブネット単位

という違いがあります。

AWSのネットワークを設計するうえでは、この違いを理解しておくことが重要です。


▪️VPCを使ったシステム構成例

ここまで学んだ内容を組み合わせると、例えば以下のような構成を作ることができます。

                       Internet
                           │
                           ↓
                  Internet Gateway
                           │
                ┌──────────┴──────────┐
                │         VPC          │
                │                      │
                │  Public Subnet      │
                │      │               │
                │      ↓               │
                │     ALB              │
                │      │               │
                │      ↓               │
                │  Private Subnet      │
                │      │               │
                │      ↓               │
                │     EC2              │
                │      │               │
                │      ↓               │
                │     RDS              │
                │                      │
                └──────────────────────┘

例えばWebシステムでは、

  • Internet Gateway:VPCとインターネットを接続
  • Public Subnet:外部からアクセスを受けるリソースを配置
  • ALB:リクエストを受け付ける
  • Private Subnet:アプリケーションやデータベースを配置
  • EC2:アプリケーションを実行
  • RDS:データベースを提供

というように、それぞれの役割を分けることができます。

このように、VPCはAWS上でシステムを構築するためのネットワークの土台になります。


▪️VPCを学ぶうえで重要なこと

VPCを勉強すると、

  • VPC
  • Subnet
  • Route Table
  • Internet Gateway
  • Security Group
  • NACL

など、さまざまな用語が出てきます。

最初はそれぞれの役割を覚えるだけでも大変だと思います。

しかし、単語だけを暗記するのではなく、

「この通信はどこからどこへ行くのか?」

という視点で考えると理解しやすくなります。

例えば、

ユーザー
   ↓
インターネット
   ↓
Internet Gateway
   ↓
VPC
   ↓
Public Subnet
   ↓
ALB
   ↓
Private Subnet
   ↓
EC2

という通信の流れを追っていくことで、それぞれのAWSサービスが何のために存在しているのかが見えてきます。

これはAWSのネットワークを理解するうえで非常に重要な考え方です。


▪️まとめ

今回はAWSのVPCについて解説しました。

今回のポイントをまとめます。

  • VPCはAWS上に作成できる仮想ネットワーク
  • VPCの中にサブネットを作成する
  • サブネットの中にEC2などのAWSリソースを配置する
  • VPCのIPアドレス範囲をCIDRで指定する
  • Public Subnetは一般的にInternet Gatewayへのルートを持つサブネット
  • Private Subnetは一般的にInternet Gatewayへの直接のルートを持たないサブネット
  • Internet GatewayはVPCとインターネット間の通信に利用する
  • Route Tableによって通信の経路を決める
  • Security GroupやNACLによって通信を制御できる
  • VPCはAWS上でシステムを構築するためのネットワークの土台

EC2が「サーバー」だとすると、VPCはそのサーバーを配置して通信させるための「ネットワーク」です。

そのため、EC2とVPCはセットで理解すると、AWSのインフラ構成がより分かりやすくなります。

次の記事では「サブネット」について解説します。
*「サブネット」についての記事はこちら
→「https://lovelabengineer.com/2026/10/07/awsのサブネットとは?vpcとの違いや仕組みを初心者/」

No responses yet

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

Latest Comments

表示できるコメントはありません。