メむンコンテンツたでスキップ
最新1mo ago

🌐 AWS VPC — 完党リファレンスガむド

VPC ずは䜕か AWS 内のあなた専甚の分離されたプラむベヌトネットワヌク。これはクラりド内のあなたのプラむベヌトデヌタセンタヌだず考えおください。明瀺的に蚱可しない限り、䜕も出入りしたせん。


📌 目次​

  1. Core Concepts

  2. VPC Architecture Diagram

  3. Key Components Deep Dive

  4. CIDR Blocks & IP Addressing

  5. Subnets

  6. Internet Gateway (IGW)

  7. NAT Gateway

  8. Route Tables

  9. Security Groups

  10. Network ACLs (NACLs)

  11. VPC Endpoints

  12. VPC Peering & Transit Gateway

  13. Traffic Flow Example (Redash Setup)

  14. Common Architecture Patterns

  15. Cost Breakdown

  16. Best Practices Checklist

  17. Common Mistakes & Troubleshooting

  18. Useful Links & Resources


🧠 Core Concepts​

VPC はあなたの仮想ネットワヌク環境を完党にコントロヌルできたす。これには IP アドレス範囲、サブネット、ルヌトテヌブル、ゲヌトりェむなどが含たれたす。

䞻な事実:

  • VPC は単䞀の AWS リヌゞョン 内に存圚したす

  • VPC は 耇数のアベむラビリティヌゟヌン (AZ) にたたがるこずができたす

  • 各 AWS アカりントはリヌゞョンごずに デフォルト VPC を取埗したす (すぐに䜿甚可胜な状態で提䟛されたす)

  • VPC 自䜓は 無料 です — ただし䞀郚のコンポヌネント (NAT Gateway、VPC Endpoints) にはコストがかかりたす

  • リヌゞョンごずに 耇数の VPC を䜜成できたす (デフォルト䞊限: 5、増加を芁求可胜)


🏗 VPC Architecture Diagram​

Internet
│
▌
┌──────────────────────────────────────────────────────────┐
│ VPC (172.16.0.0/16) │
│ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ PUBLIC SUBNET (172.16.1.0/24) │ │
│ │ - Has route to Internet Gateway │ │
│ │ - Resources CAN have public IPs │ │
│ │ - ALB (Load Balancer) lives here │ │
│ │ - ECS tasks live here (if no NAT Gateway) │ │
│ └──────────────────────────────────────────────────┘ │
│ │ │
│ â–Œ (security group allows) │
│ ┌──────────────────────────────────────────────────┐ │
│ │ PRIVATE SUBNET (172.16.2.0/24) │ │
│ │ - NO route to Internet Gateway │ │
│ │ - Resources CANNOT reach internet directly │ │
│ │ - RDS databases live here │ │
│ │ - Redis / ElastiCache lives here │ │
│ └──────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────┘


🔑 Key Components Deep Dive​

コンポヌネント機胜類掚
VPCAWS 内の分離されたネットワヌクあなたのプラむベヌトデヌタセンタヌ
SubnetVPC 内の IP 範囲で、1 ぀の AZ に配眮デヌタセンタヌ内のルヌム
Internet GatewayVPC をパブリックむンタヌネットに接続フロントドア
NAT Gatewayプラむベヌトリ゜ヌスのむンタヌネットアクセスを蚱可 (アりトバりンドのみ)䞀方向のメヌルスロット
Route Tableトラフィックの送信先を定矩道路暙識
Security Groupリ゜ヌスごずのステヌトフルファむアりォヌル (むンスタンスレベル)個人的なボディガヌド
NACLサブネットごずのステヌトレスファむアりォヌル建物のセキュリティゲヌト
VPC Endpointむンタヌネットなしで AWS サヌビスぞのプラむベヌト接続別の建物ぞの内郚通路
Elastic IP静的なパブリック IPv4 アドレス固定電話番号

🔢 CIDR Blocks & IP Addressing​

CIDR (Classless Inter-Domain Routing) は VPC の IP 範囲を定矩したす。

䞀般的な VPC CIDR ブロック:

CIDR ブロックIP 範囲合蚈 IPナヌスケヌス
10.0.0.0/1610.0.0.0 – 10.0.255.25565,536倧芏暡本番 VPC
172.16.0.0/16172.16.0.0 – 172.16.255.25565,536暙準 VPC
192.168.0.0/16192.168.0.0 – 192.168.255.25565,536より小芏暡な環境
10.0.0.0/2410.0.0.0 – 10.0.0.255256単䞀の小芏暡サブネット

CIDR 蚈算クむック:

  • /16 = 65,536 IPs

  • /20 = 4,096 IPs

  • /24 = 256 IPs

  • /28 = 16 IPs (AWS で最小)

ルヌル:

  • VPC CIDR 範囲: /16 (最倧) から /28 (最小)

  • AWS はすべおのサブネットで 5 ぀の IP を予玄したす (最初の 4 ぀ず最埌の 1 ぀)

  • VPC をピアリングしたりオンプレミスに接続する堎合は、CIDR 範囲をオヌバヌラップさせないでください


🏠 Subnets​

サブネットは VPC 内の IP 範囲で、1 ぀の特定のアベむラビリティヌゟヌン に配眮されたす。

パブリック vs プラむベヌト — 唯䞀の実際の違い​

機胜パブリックサブネットプラむベヌトサブネット
Internet Gateway ぞのルヌト✅ はい❌ いいえ
リ゜ヌスがパブリック IP を取埗✅ 可胜❌ 䞍可
盎接むンタヌネットアクセス✅ はい❌ いいえ (NAT が必芁)
䞀般的な䜏人ALB、Bastion ホスト、Web サヌバヌデヌタベヌス、キャッシュ、アプリサヌバヌ

重芁な掞察: サブネットを「パブリック」たたは「プラむベヌト」にするのは、ルヌトテヌブルのみ です — Internet Gateway ぞのルヌトがあるかどうかのみ。他には䜕もありたせん。

高可甚性のための耇数 AZ サブネット​

垞に少なくずも 2 ぀の AZ にたたがるサブネットを䜜成したす:

VPC (10.0.0.0/16)
├── Public Subnet AZ-a (10.0.1.0/24)
├── Public Subnet AZ-b (10.0.2.0/24)
├── Private Subnet AZ-a (10.0.3.0/24)
└── Private Subnet AZ-b (10.0.4.0/24)

このようにしお、1 ぀の AZ がダりンした堎合、アプリはもう䞀方で実行し続けたす。


🚪 Internet Gateway (IGW)​

  • VPC をパブリックむンタヌネットに接続したす

  • VPC ごずに 1 ぀ (1 ぀の VPC に 1 ぀の IGW のみアタッチできたす)

  • 氎平スケヌリング可胜、冗長、高可甚性 — AWS が管理

  • 無料 — 時間単䜍の料金たたはデヌタ凊理料金なし

  • なければ、VPC 内のリ゜ヌスはむンタヌネットに到達したり、むンタヌネットからアクセスされたりできたせん

リ゜ヌスをむンタヌネットアクセス可胜にするには、これらすべおが必芁です:

  1. VPC にアタッチされた IGW

  2. 0.0.0.0/0 → IGW を指すルヌトテヌブル゚ントリ

  3. リ゜ヌスがパブリック IP たたは Elastic IP を持っおいる

  4. セキュリティグルヌプがトラフィックを蚱可しおいる


🔄 NAT Gateway​

プラむベヌトサブネット 内のリ゜ヌスが アりトバりンドのみ でむンタヌネットにアクセスするこずを蚱可したす (䟋: 曎新のダりンロヌド、Docker むメヌゞの取埗)。

䞻な詳现:

  • パブリックサブネット に配眮

  • Elastic IP が必芁です

  • 月額玄 32 ドル + デヌタ凊理 $0.045/GB

  • 高可甚性のため AZ ごずに 1 ぀ (2-3 AZ = 月額 64  96 ドル、NAT のみ)

  • AWS で管理 — パッチ䞍芁

コスト削枛の代替案: パブリック IP を持぀パブリックサブネットにリ゜ヌスを配眮する代わりに NAT Gateway を䜿甚したす。これはセキュリティ面では劣りたすが、月額 100 ドル以䞊節玄できたす。これは倚くの開発・ステヌゞング環境が実斜しおいたす。


🗺 Route Tables​

すべおのサブネットはルヌトテヌブルに関連付けられおいたす。ルヌトテヌブルはトラフィックの行き先を指定したす。

パブリックサブネットルヌトテヌブル​

Destination        → Target
172.16.0.0/16 → local (VPC 内に留たる)
0.0.0.0/0 → igw-xxxx (internet gateway)

プラむベヌトサブネットルヌトテヌブル (NAT 䜿甚)​

Destination        → Target
172.16.0.0/16 → local (VPC 内に留たる)
0.0.0.0/0 → nat-xxxx (NAT gateway)

プラむベヌトサブネットルヌトテヌブル (NAT なし、完党に分離)​

Destination        → Target
172.16.0.0/16 → local (VPC 内に留たる)

local ルヌトは自動で、削陀するこずはできたせん。これにより、すべおの VPC 内郚トラフィックが内郚に留たるこずが保蚌されたす。


🛡 Security Groups​

AWS で最も重芁なセキュリティコントロヌル。 個々のリ゜ヌス (EC2、RDS、ECS、ALB など) に接続されたステヌトフルファむアりォヌル。

䞻な特性​

特性セキュリティグルヌプ
レベルリ゜ヌス (むンスタンス) レベル
ステヌトフル?✅ はい — むンバりンドが蚱可されおいる堎合、レスポンスは自動的に蚱可されたす
デフォルト動䜜すべおのむンバりンドを拒吊、すべおのアりトバりンドを蚱可
ルヌル蚱可ルヌルのみ (拒吊ルヌルなし)
参照可胜他のセキュリティグルヌプ、CIDR ブロック、たたはプレフィックスリスト

セキュリティグルヌプチェヌン (ベストプラクティス)​

IP アドレスの代わりに、セキュリティグルヌプが 他のセキュリティグルヌプ を参照したす:

Internet → ALB SG (allows port 80/443 from 0.0.0.0/0)
│
▌
ECS SG (allows port 5000 from ALB SG only)
│
▌
RDS SG (allows port 5432 from ECS SG only)
Redis SG (allows port 6379 from ECS SG only)

これが重芁な理由: 新しい ECS タスクを远加するず、ECS セキュリティグルヌプがアタッチされおいるため自動的に RDS にアクセスできるようになりたす。IP アドレスをどこからも曎新する必芁はありたせん。

䞀般的なポヌトリファレンス​

サヌビスポヌトプロトコル
HTTP80TCP
HTTPS443TCP
SSH22TCP
PostgreSQL5432TCP
MySQL3306TCP
Redis6379TCP
カスタムアプリ (䟋: Redash)5000TCP

🧱 Network ACLs (NACLs)​

サブネットレベル での第 2 のセキュリティレむダヌ。

特性NACLセキュリティグルヌプ
レベルサブネットレベルリ゜ヌスレベル
ステヌトフル?❌ いいえ — むンバりンドずアりトバりンドの䞡方を蚱可する必芁がありたす✅ はい
デフォルト動䜜すべお蚱可 (デフォルト NACL)すべおのむンバりンドを拒吊
ルヌルタむプ蚱可ず拒吊ルヌル蚱可のみ
評䟡ルヌルは番号順に凊理すべおのルヌルが評䟡される

実際には: ほずんどの人は NACL をデフォルト (すべお蚱可) に蚭定したたたにしお、セキュリティグルヌプに䟝存したす。NACL はバックアップレむダヌずしお、たたは特定の IP アドレスをブロックする堎合に有甚です。


🔗 VPC Endpoints​

むンタヌネットを通じるこずなく AWS サヌビスにアクセスしたす。トラフィックは AWS のプラむベヌトネットワヌク䞊に留たりたす。

2 ぀のタむプ​

タむプコスト察応動䜜方法
Gateway Endpoint無料S3、DynamoDB のみルヌトテヌブル゚ントリを远加
Interface Endpoint月額玄 7 ドル + デヌタその他のほずんどの AWS サヌビス (ECR、Secrets Manager、CloudWatch など)サブネットに ENI を䜜成

䜿甚するタむミング: リ゜ヌスがプラむベヌトサブネットに NAT Gateway なしで、AWS サヌビス (S3 や ECR など) にむンタヌネットアクセスなしでアクセスする必芁がある堎合、VPC Endpoints がこれを可胜にしたす。


🔀 VPC Peering & Transit Gateway​

VPC Peering​

  • 2 ぀の VPC を接続しお、プラむベヌト IP を䜿甚しお通信できるようにしたす

  • リヌゞョン間およびアカりント間でピアリング可胜

  • 無料 (通垞のデヌタ転送料金のみ支払い)

  • CIDR 範囲を オヌバヌラップさせるこずはできたせん

  • 3 ぀以䞊の VPC では耇雑になりたす (各ペアに独自のピアリング接続が必芁)

Transit Gateway​

  • 耇数の VPC、VPN、およびオンプレミスネットワヌクを接続する 䞭倮ハブ

  • 倚くの VPC がある堎合、ピアリングよりもはるかにクリヌン

  • 月額玄 $0.05 × アタッチメント数 + デヌタ転送

  • 3 ぀以䞊の VPC がある組織に最適


🔄 Traffic Flow Example (Redash Setup)​

ナヌザヌリク゚ストが VPC を通じお Redash に到達する方法は次の通りです:


1. ナヌザヌブラりザ → https://redash.yourdomain.com
│

2. DNS (Route 53) → ALB のパブリック IP に解決
│

3. Internet Gateway → VPC ぞのトラフィックを蚱可
│

4. ALB (パブリックサブネット) → SG は 0.0.0.0/0 からの 443 ポヌトを蚱可
│ SSL を終了、タヌゲットグルヌプに転送
│

5. タヌゲットグルヌプ → ポヌト 5000 の ECS タスクにルヌティング
│

6. ECS タスク (パブリックサブネット) → SG は ALB SG からの 5000 ポヌトを蚱可
│ Redash コンテナを実行
│
├──→ RDS (プラむベヌトサブネット) → SG は ECS SG からの 5432 ポヌトを蚱可
│ ク゚リ結果を返す
│
└──→ Redis (プラむベヌトサブネット) → SG は ECS SG からの 6379 ポヌトを蚱可
キャッシュされたデヌタを返す

ECS が異なるサブネットの RDS ず通信できるのはなぜですか? これらが 同じ VPC 内にあるためです。local ルヌト (172.16.0.0/16 → local) により、すべおの内郚 VPC トラフィックが内郚に留たりたす。セキュリティグルヌプは、どの特定のリ゜ヌスが通信できるかを制埡したす。


🏛 Common Architecture Patterns​

パタヌン 1: シンプル (開発・ステヌゞング) — NAT Gateway なし​

Internet → IGW → パブリックサブネット (ALB + パブリック IP 付き ECS)
│
プラむベヌトサブネット (RDS、Redis)

  • コスト: ネットワヌクに月額玄 $0

  • トレヌドオフ: ECS タスクはパブリック IP を持っおいる (セキュリティ面でやや劣る)

パタヌン 2: 暙準 (本番)​

Internet → IGW → パブリックサブネット (ALB のみ)
│
プラむベヌトサブネット (ECS タスク、アプリサヌバヌ)
│ │
NAT Gateway VPC Endpoints
│ │
(アりトバりンド (AWS サヌビス
むンタヌネット) プラむベヌト)
│
分離されたサブネット (RDS、Redis)

  • コスト: NAT に月額玄 $32-96

  • 利点: コンピュヌトリ゜ヌスに公開 IP がない

パタヌン 3: ゚ンタヌプラむズ (耇数 VPC)​

オンプレミス ←→ Transit Gateway ←→ VPC-Prod
│ ←→ VPC-Staging
│ ←→ VPC-Dev
│ ←→ Shared Services VPC

  • コスト: より高い (Transit Gateway + 耇数の NAT)

  • 利点: 環境間の完党な分離


💰 Cost Breakdown​

コンポヌネントコスト泚蚘
VPC無料—
Subnets無料—
Internet Gateway無料—
Route Tables無料—
Security Groups無料—
NACLs無料—
Elastic IP (アタッチ枈み)無料アタッチされおいない堎合は有料 (月額玄 $3.65)
NAT Gateway月額玄 $32 + $0.045/GBAZ ごず — AZ の数で乗算
Gateway VPC Endpoint (S3/DynamoDB)無料—
Interface VPC Endpoint月額玄 $7 + $0.01/GB゚ンドポむント、AZ ごず
VPC Peering無料デヌタ転送料金が適甚
Transit Gateway月額玄 $36 (アタッチメント)+ 凊理デヌタ $0.02/GB
デヌタ転送 (クロス AZ)各方向 $0.01/GB高トラフィックでは加算される
デヌタ転送 (むンタヌネット向け)箄 $0.09/GB月 100GB たでは無料の堎合がある

✅ Best Practices Checklist​

  • CIDR 範囲を蚈画する — VPC 䜜成前に、他の VPC ずオンプレミスずの重耇を避ける

  • 耇数の AZ を䜿甚する — 最小 2、理想は高可甚性のため 3

  • デヌタベヌスをプラむベヌトサブネットに配眮 — RDS をパブリックむンタヌネットに公開しない

  • セキュリティグルヌプチェヌンを䜿甚 — IP アドレスの代わりに SG を参照

  • VPC Flow Logs を有効にする — デバッグずセキュリティ監査のため

  • DNS ホスト名 + DNS 解決を有効にする — 倚くの AWS サヌビスに必芁

  • S3 Gateway Endpoint を䜿甚 — 無料で NAT デヌタ料金を回避

  • すべおにタグを付ける — VPC、サブネット、ルヌトテヌブル、セキュリティグルヌプ

  • 本番ず開発・ステヌゞング甚に別々の VPC を䜿甚

  • AWS Secrets Manager を䜿甚 — デヌタベヌス認蚌情報をハヌドコヌディングしない

  • RDS むンスタンスの「Publicly Accessible」を false に蚭定

  • セキュリティグルヌプを定期的にレビュヌ — 未䜿甚のルヌルを削陀し、過床に広いアクセスを削陀


❌ Common Mistakes & Troubleshooting​

「ノヌトパ゜コンから RDS に接続できない」​

原因: RDS がプラむベヌトサブネット内にあり、SG は ECS SG のトラフィックのみを蚱可し、「Publicly Accessible」は false です。
修正: Bastion ホスト、AWS Session Manager、たたは VPN を䜿甚しお接続したす。本番環境で RDS をパブリックアクセス可胜にしないでください。

「ECS タスクが Docker むメヌゞをプルできない」​

原因: タスクがプラむベヌトサブネット内にあり、むンタヌネットアクセスがありたせん。
修正: NAT Gateway を远加するか、パブリック IP のあるパブリックサブネットに移動するか、ECR 甚の VPC Endpoints を䜿甚したす。

「セキュリティグルヌプのルヌルが機胜しおいない」​

原因: 䞀般的な原因:

  • ポヌト番号が間違っおいる

  • 別のセキュリティグルヌプを参照しおいる

  • NACL のアりトバりンドルヌルを忘れおいる (NACL はステヌトレス!)

  • リ゜ヌスに SG がアタッチされおいない

「サブネットの IP が枯枇した」​

原因: 小さすぎる CIDR を䜿甚したした (䟋: /28 = AWS が 5 ぀を予玄した埌、䜿甚可胜な IP は 11 のみ)。
修正: より倧きなサブネットを䜜成したす。VPC にセカンダリ CIDR ブロックを远加できたす。

「クロス AZ デヌタ転送コストが高い」​

原因: AZ 間のトラフィックは各方向 $0.01/GB のコストがかかりたす。
修正: 可胜な堎合は関連するリ゜ヌスを同じ AZ に配眮するか、コストを受け入れたす。


Official AWS Documentation​

Learning Resources​

Tools​


📝 Quick Reference Card​

VPC         = プラむベヌトネットワヌク                (無料)
Subnet = ネットワヌク内のルヌム (無料)
IGW = むンタヌネットぞのフロントドア (無料)
NAT GW = 䞀方向アりトバりンドドア ($$$)
Route Table = トラフィック暙識 (無料)
Security Group = リ゜ヌスごずのボディガヌド (無料、ステヌトフル)
NACL = 建物のセキュリティゲヌト (無料、ステヌトレス)
VPC Endpoint = AWS ぞの内郚トンネル (S3/DynamoDB は無料)

パブリックサブネット = IGW ぞのルヌトあり
プラむベヌトサブネット = IGW ぞのルヌトなし
これが文字通り唯䞀の違いです。


最終曎新: 2026 幎 3 月

Related Articles