VPC — クラウドの中に持つ 自分専用の区画

中級の解説は準備中のため、中級の内容を表示しています。

概要 — まず全体をつかむ

初級では VPC を「自分専用の区画」と捉えました。中級では、その区画をどう小分けし、どう通信を制御するかを見ます。

詳細 — 1段階ずつ追う

これは何をする係?

VPC は サブネットで小分けにします。区画をさらに仕切った小区画で、外との関係で2種類に分かれます。

  • パブリックサブネット — 外への出口へ向かう経路を持つ。外に出られる(Webサーバなど公開してよいものを置く)
  • プライベートサブネット — その経路を持たない。直接は外に出られない(DBサーバなど隠すものを置く)
アニメーション『VPCとサブネット(公開/非公開)』を開く
VPC — クラウドの中の自分専用の区画公開してよいものは上(パブリック)、隠すものは下(プライベート)に分けるインターネットインターネットゲートウェイVPC 10.0.0.0/16パブリックサブネット 10.0.1.0/24外に出られる(公開してよいものを置く)門番WebサーバNATゲートウェイ内→外は通す戻りの新規接続は入れないプライベートサブネット 10.0.2.0/24直接は外に出られない(隠すものを置く)門番DBサーバ双方向更新などで外へ門番=セキュリティグループ(許可ルール)。Webは上・DBは下、が定石

登場人物メモ:

  • ※1 サブネット — VPCをさらに小分けした区画
  • ※2 ルートテーブル — どの宛先の通信を どこへ流すかを決める案内表
  • ※3 インターネットゲートウェイ/NATゲートウェイ — 外への出口。前者は双方向、後者は内から外への一方向

仕事の流れ

  1. VPC全体のアドレス範囲を CIDR で決める(例 10.0.0.0/16)
  2. その中をサブネット(※1)に分割する(例 10.0.1.0/24 と 10.0.2.0/24)
  3. ルートテーブル(※2)で、各サブネットの通信の行き先を決める
  4. 外との出口として インターネットゲートウェイ/NATゲートウェイ(※3)を置く
  5. セキュリティグループ/NACL で、通してよい通信だけ許可する

設計の勘所

CIDR はアドレス範囲の指定方法です。/16 は広い範囲、/24 は狭い範囲——数字が大きいほど区画は小さくなります。「どこまでが同じネットワークか」の考え方は、下の図が助けになります。

アニメーション『IPアドレスの構造(ネットワーク部とホスト部)』を開く
IPアドレスの構造 — 192.168.1.10 /24前半がネットワーク部(どこの町内か)/後半がホスト部(町内の何番地か)ネットワーク部(192.168.1)ホスト部(.10)192168110/24 = ここまで同じ町内サブネットマスク 255.255.255.0(255=ネットワーク部/0=ホスト部)2552552550ネットワーク部が同じ=同じ町内。町内なら直接、別の町へはルーター(出口)から届ける

門番は2種類あります。

  • セキュリティグループ — サーバ単位の門番。許可したい通信を書く(戻りは自動で通る)
  • NACL — サブネット単位の門番。許可も拒否も書け、行き帰りを別々に見る

そして外への出口は使い分けます。パブリックは インターネットゲートウェイで双方向に外とやり取り。プライベートは NATゲートウェイ経由で、内から外へ出るときだけ通します(外からの新規接続は入れない)。「Webはパブリック、DBはプライベート」——これが安全設計の定石です。

⚠️ うまくいかないとき

  • CIDRの重複 — 後で別ネットワークとつなぐとき、範囲がぶつかって接続できない
  • 経路の付け間違い — プライベートに外向き経路を付けてしまい、隠すはずのDBが外に出られてしまう
  • 門番のゆるさ — セキュリティグループを全開放し、隔離の意味が消える
  • NATの入れ違い — 外からの新規接続まで通そうとして、公開すべきでないものを晒す

理解度チェック

そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。

1. パブリックサブネットとプライベートサブネットの違いは?

2. プライベートサブネットのサーバが 更新のため外へ通信したいとき 使うのは?

3. VPCの中を、用途ごとにさらに小分けした区画を何と呼ぶ?

4. 10.0.0.0/16 のように、ネットワークのアドレス範囲を指定する記法を英字4文字で何と呼ぶ?

5. CIDRで /16 と /24 を比べたとき、正しいのはどれ?

6. セキュリティグループとNACLの「効く単位」の組み合わせで正しいのはどれ?

7. ルートテーブルの役割として正しいのはどれ?

8. パブリックサブネットが外と双方向にやり取りするために使う出口はどれ?

VPC — クラウドの中に持つ 自分専用の区画 | Kotowary