▪️目的
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