| この記事の要点 |
|
概要
VPC(Virtual Private Cloud、仮想プライベートクラウド)とは、パブリッククラウドの共有インフラ上に、利用者ごとに論理的に隔離された専用の仮想ネットワーク空間を構築する仕組みです。物理的なデータセンターやスイッチ・ルータを自分で用意することなく、ソフトウェア定義で「自社専用のネットワーク」をクラウド上に切り出せます。
VPC の中では、IP アドレス範囲(CIDR ブロック)の設計、サブネットへの分割、ルーティングの制御、ファイアウォール相当のセキュリティ設定など、オンプレミスのネットワークとほぼ同じ要素を仮想的に扱えます。重要なのは「隔離」です。同じ物理基盤を多数の利用者が共有していても、VPC 同士は互いに見えず、明示的に接続を設定しない限り通信できません。これにより、パブリッククラウド上でもプライベートネットワークと同等の独立性が得られます。
仕組み
VPC はリージョン(地理的に離れたデータセンター群の単位)ごとに作成します。VPC を作る最初のステップは、その VPC 全体で使うプライベート IP アドレスの範囲を CIDR ブロックで指定することです。一般にはプライベートアドレス空間(RFC 1918)から選びます。
VPC の CIDR 指定例
10.0.0.0/16 → 10.0.0.0 ~ 10.0.255.255 (65,536 アドレス)
その内部をサブネットに分割
10.0.1.0/24 → AZ-a 用 (256 アドレス)
10.0.2.0/24 → AZ-c 用 (256 アドレス)
VPC の内部は、複数のアベイラビリティゾーン(AZ)にまたがってサブネットを配置できます。AZ とは、同一リージョン内で電源やネットワークが独立した別々のデータセンター群のことです。各サブネットはいずれか 1 つの AZ に属します。複数 AZ にサブネットを分散させることで、片方の AZ で障害が起きてもサービスを継続できる冗長構成を組めます。
VPC 内のリソース(仮想マシンなど)は、VPC の CIDR 範囲内のプライベート IP を割り当てられ、デフォルトでは VPC 内のみで通信します。外部インターネット、オンプレミス、他の VPC と通信するには、インターネットゲートウェイ・VPN ゲートウェイ・VPC ピアリングなどを明示的にアタッチする必要があります。何も設定しない VPC は完全に閉じた空間です。
構成・実用例
典型的な 3 層 Web アプリを VPC 上に構築する構成例です。CIDR を設計し、用途別・AZ 別にサブネットを切ります。
VPC: 10.0.0.0/16 (リージョン: 東京)
┌─ AZ-a ───────────────┐ ┌─ AZ-c ───────────────┐
│ public 10.0.0.0/24 │ │ public 10.0.10.0/24 │ ← ALB / NAT GW
│ app 10.0.1.0/24 │ │ app 10.0.11.0/24 │ ← Web/AP サーバ
│ db 10.0.2.0/24 │ │ db 10.0.12.0/24 │ ← DB (プライベート)
└──────────────────────┘ └──────────────────────┘
│ │
└──── 同一 VPC 内は直接通信可 ─┘
各クラウドでの名称と作成イメージは次の通りです。AWS の CLI 例を示します。
# AWS: VPC とサブネットを作成
aws ec2 create-vpc --cidr-block 10.0.0.0/16
aws ec2 create-subnet --vpc-id vpc-xxxx \
--cidr-block 10.0.1.0/24 --availability-zone ap-northeast-1a
VPC は「テンプレート化」して再利用するのが実務の定石です。Terraform などの IaC(Infrastructure as Code)で VPC・サブネット・ルートテーブルをコード化しておけば、本番・検証・開発の各環境を同一構成で再現できます。
主な用途
- クラウド上の独立ネットワーク基盤 — Web アプリ・基幹システム・分析基盤などを、互いに隔離された VPC 上に構築します。
- マルチ AZ による高可用性 — 複数 AZ にサブネットを分散し、データセンター単位の障害に耐える構成を作ります。
- 本番・検証・開発の環境分離 — 環境ごとに VPC を分けることで、設定ミスや障害が他環境へ波及するのを防ぎます。
- ハイブリッドクラウドの拠点 — VPN や専用線でオンプレミスと接続し、社内ネットワークの延長として VPC を使います。
関連技術との比較
| 項目 | AWS VPC | Azure VNet | GCP VPC |
|---|---|---|---|
| 名称 | VPC | 仮想ネットワーク(VNet) | VPC ネットワーク |
| スコープ | リージョン単位 | リージョン単位 | グローバル(サブネットがリージョン単位) |
| サブネットの属する単位 | AZ ごと | VNet 全体(可用性ゾーンは別概念) | リージョンごと |
| ファイアウォール | セキュリティグループ + NACL | NSG(ネットワークセキュリティグループ) | ファイアウォールルール |
| 拠点間接続 | ピアリング / Transit GW | VNet ピアリング | VPC ピアリング / 共有 VPC |
注意点・落とし穴
- CIDR は後から変更しにくい — VPC の主 CIDR を狭く取りすぎると拡張時に困ります。将来の規模を見越して
/16など余裕のある範囲で設計します。 - CIDR の重複に注意 — オンプレや他 VPC と接続する予定があるなら、同じプライベート範囲(例: 10.0.0.0/16)が両側で重複すると VPN/ピアリングでルーティングできません。
- サブネットは AZ をまたげない(AWS の場合) — 1 サブネット = 1 AZ です。冗長化には AZ ごとにサブネットを用意します。
- デフォルトでは外部と通信できない — インターネットゲートウェイやルートを設定しない限り、VPC 内リソースは外部へ出られません。「つながらない」原因の多くはここです。
- クラウドごとの差異 — GCP の VPC はグローバル、AWS はリージョン単位など、スコープの違いを混同すると設計を誤ります。
関連リンク
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- djangoのテンプレートの作成とヘッダー・フッターの共通化 2026-10-03 21:41:49
- テンプレートフラグメント(ヘッダー等の共有化) 2026-10-03 21:41:49
- reCAPTCHA v3 使い方(サンプル付き) 2026-10-03 21:37:05
- Content-Type一覧|MIMEタイプとはとHTTPでの主な使用場面 2026-10-03 21:37:05
- SpringにおけるAOPの使い方 2026-10-03 21:37:05
- X (Twitter) API でツイートできないがエラーが出ない問題の原因と対処 2026-10-03 11:33:01
- X (Twitter) API アプリケーション登録完全ガイド|v2・Bearer Token・OAuth 2.0 PKCE 2026-10-03 11:33:01
- X (Twitter) API 完全ガイド|従量課金の料金・単価(2026年10月)と v2 移行 2026-10-03 11:32:40
- Google DeepMind とは?Gemini・AlphaFold の開発元 2026-10-03 11:26:56
- Cursor とは?AI 統合型コードエディタの使い方・料金 2026-10-03 11:26:56
- Claude (Anthropic) とは?AIチャットの使い方・モデルファミリ・API 2026-10-03 11:26:56
- AIベンダー一覧:OpenAI・Anthropic・Google DeepMind・Microsoft・Meta 2026-10-03 11:26:56
- クラウド・インフラ完全ガイド — AWS/Azure/GCP/Kubernetes 2026-10-03 11:26:56
- テキストエディタ完全比較 (VS Code / Cursor / Vim / Emacs / IDE) 2026-10-03 11:26:56
- プログラミング学習プラットフォーム|Scratch・micro:bit ほか 2026-10-03 11:26:56