AWS VPCとサブネットの違いと設計のポイントをやさしく解説!初心者でもわかるネットワークの基本
生徒
「先生、VPCとサブネットって何が違うんですか?両方ともネットワークって感じでよく分かりません…。」
先生
「たしかにVPC(ブイピーシー)とサブネットは、似ている言葉ですが役割が違います。それぞれの意味と設計の考え方を、わかりやすく説明していきますね。」
生徒
「お願いします!初心者でも理解できるようにゆっくり教えてください!」
先生
「もちろんです。それでは、まずはVPCの意味から見ていきましょう!」
1. AWS VPCとは?
VPCは、読み方はVPC(ブイピーシー)で、正式には「Virtual Private Cloud(バーチャル・プライベート・クラウド)」といいます。
VPCは、AWS(アマゾン・ウェブ・サービス)上に作る、自分専用のネットワーク空間です。インターネットの中に、自分だけが使える安全な部屋を作るようなイメージです。
この中にサーバー(EC2)やデータベース(RDS)を置いて、外からのアクセスを制御したり、ネットワークのルールを自由に決められます。
2. サブネットとは?
サブネット(読み方:サブネット)は、VPCの中をさらに小さく分けた区画です。VPCが「マンションの建物全体」だとしたら、サブネットは「各部屋」にあたります。
サブネットは主に2種類に分けられます:
- パブリックサブネット: インターネットと通信できる部屋
- プライベートサブネット: 外部とつながらない安全な部屋
用途ごとに区切って使うことで、セキュリティを高めたり、管理をしやすくしたりできます。
3. VPCとサブネットの違い
ここで、VPCとサブネットの違いを整理しておきましょう:
| 項目 | VPC | サブネット |
|---|---|---|
| 意味 | 自分専用の仮想ネットワーク | VPC内を分けたネットワークの一部 |
| 役割 | ネットワーク全体の枠 | 細かいグループ分け |
| 数 | 1つのアプリに1つが基本 | 1つのVPCに複数作れる |
| 主な設定 | IPアドレス範囲・ルート・ゲートウェイ | パブリックかプライベートか・AZ(アベイラビリティゾーン) |
4. VPC設計の基本ルール
VPCを作るときには、次のポイントを考えるのが基本です。
- CIDRブロック(シーアイディーアール): 使うIPアドレスの範囲を決めます(例:10.0.0.0/16)
- AZの分散: 異なるリージョン内の複数のゾーンに分けて耐障害性を高めます
- 用途別のサブネット設計: Web用、DB用など、使い道に応じて分けましょう
5. サブネット設計のポイント
サブネットの設計では、以下の点に注意しましょう。
- IPアドレスの範囲: サブネットごとにCIDRを細かく分けて設定(例:10.0.1.0/24)
- パブリック・プライベートの使い分け: 外部と通信するものはパブリック、内部用はプライベートにします
- インターネットゲートウェイの設定: パブリックサブネットには必要です
- ルートテーブルの設定: 通信の通り道を決めます
6. よくあるサブネット設計例
以下は、初心者でも使いやすいサブネットの構成例です。
- パブリックサブネット(例:10.0.1.0/24) … EC2など外部アクセスが必要なリソース
- プライベートサブネット(例:10.0.2.0/24) … RDSなど内部専用リソース
それぞれのサブネットを別のAZ(アベイラビリティゾーン)に分けておくと、障害時の影響を減らすことができます。
7. ネットワーク設計での注意点
最後に、VPCやサブネットを設計するうえでの注意点を紹介します。
- 設計のやり直しは大変: 最初にしっかり計画を立てましょう
- CIDRブロックが重複しないように: 他のVPCや社内ネットワークと競合しないように設定
- セキュリティ設定も忘れずに: セキュリティグループやネットワークACLのルールも重要です
まとめ
AWS VPCとサブネットの違いと設計の考え方を総復習
ここまで、AWSにおけるVPCとサブネットの違い、そしてネットワーク設計の基本的な考え方について学んできました。 AWSのネットワークは最初に理解しておかないと、あとから修正するのが難しくなる分野です。 その中でもVPCとサブネットは、AWSを使ううえで必ず登場する重要な基礎要素といえます。 VPCはAWS上に作成する自分専用の仮想ネットワークであり、システム全体を包み込む大きな枠の役割を持っています。 一方、サブネットはそのVPCの中をさらに用途ごとに区切ったネットワークの単位であり、設計次第でセキュリティや可用性が大きく変わります。
VPCを建物全体に例えるなら、サブネットは部屋やフロアのような存在です。 Webサーバーを置く場所、データベースを置く場所、管理用のサーバーを置く場所などを分けることで、 外部に公開する範囲と内部だけで使う範囲を明確に分離できます。 これにより、不必要なアクセスを防ぎ、システム全体の安全性を高めることができます。 特に、パブリックサブネットとプライベートサブネットの使い分けは、 AWSネットワーク設計における基本中の基本といえるでしょう。
VPCやサブネットを設計する際には、CIDRブロックによるIPアドレス設計が欠かせません。 最初にどの程度の規模でシステムを運用するのかを想定し、 将来的な拡張も考慮したうえでIPアドレスの範囲を決めておくことが重要です。 後からCIDRを変更するのは非常に手間がかかるため、 初期設計の段階で余裕を持たせておくことが、長期的な運用では大きなメリットになります。
また、サブネットはアベイラビリティゾーン単位で作成される点も重要なポイントです。 同じVPC内であっても、異なるアベイラビリティゾーンにサブネットを分けて配置することで、 片方のゾーンに障害が発生しても、もう一方でサービスを継続できる構成を作ることができます。 これは可用性を高める設計として、多くのAWSシステムで採用されている考え方です。
ネットワーク設計では、VPCやサブネットだけでなく、ルートテーブル、インターネットゲートウェイ、 セキュリティグループ、ネットワークACLなど、関連する要素もあわせて考える必要があります。 それぞれがどの役割を持ち、どこで通信を制御しているのかを理解することで、 トラブルが起きた際にも原因を切り分けやすくなります。 AWSのネットワークは自由度が高い分、設計者の理解度がそのまま品質に表れやすい分野です。
VPCとサブネット構成イメージの一例
以下は、VPCとサブネットを設計する際の考え方を整理したイメージ例です。 実際の設定画面ではありませんが、構造を理解するための参考として確認してください。
<VPC cidr="10.0.0.0/16">
<Subnet name="public-subnet" cidr="10.0.1.0/24" type="public" />
<Subnet name="private-subnet" cidr="10.0.2.0/24" type="private" />
</VPC>
このように、まず大きなVPCを定義し、その中に用途別のサブネットを配置することで、 シンプルで分かりやすいネットワーク構成を作ることができます。 初心者のうちは、構成を複雑にしすぎず、基本的な形を何度も作って理解を深めるのがおすすめです。
生徒
「VPCとサブネットの違いが、ようやくはっきり分かってきました。 VPCが大きなネットワークの枠で、サブネットがその中の区画なんですね。」
先生
「その理解で合っています。まずはそのイメージをしっかり持つことが大切です。 そこから設計の考え方を積み重ねていくと、AWSネットワークがぐっと分かりやすくなりますよ。」
生徒
「パブリックとプライベートを分ける理由や、 最初のCIDR設計が重要だということも納得できました。」
先生
「とても良い理解です。VPCとサブネットの設計は、 EC2やRDS、ロードバランサーを使うときの土台になります。 これからAWSを使い続けるうえで、必ず役立つ知識なので、 ぜひ実際に手を動かしながら慣れていってください。」