【入門編】 VPCにおけるIPv4 CIDRブロックのサイジングと拡張制限 – クラウドインフラと仮想化ネットワーク実践ガイド

「IPアドレスが足りない!」で詰まないために。AWS VPCのCIDR設計を郵便配達で理解する

こんにちは!インフラエンジニアとして、日々クラウドの海を泳いでいるSREです。

AWSでシステムを構築する際、最初に直面する「関門」といえばVPC(Virtual Private Cloud)のCIDR設計ですよね。マネジメントコンソールで適当な値をポチポチ入力して「とりあえず動いたからOK!」としていませんか?

実は、この「住所」の設計を疎かにすると、将来的にシステムを拡張したいタイミングで「これ以上、新しいサーバーを置く場所がない!」という致命的なトラブルに直面することになります。

今日は、ネットワークが苦手な方でもスッと頭に入るよう、郵便配達の仕組みに例えて、VPCのサイズ設計と拡張のコツを紐解いていきましょう!

—

そもそも「CIDR」って何?:郵便番号の考え方

VPCを作る際、必ず指定する「IPv4 CIDRブロック(例:10.0.0.0/16)」。これ、難しく考える必要はありません。「ある特定のエリアの郵便番号の範囲を決めている」とイメージしてください。

  • 10.0.0.0/16 とは:
  • 10.0. までを「エリアの住所」として固定し、残りの数字で6万5千軒以上の家(IPアドレス)を建てられる広大な土地を確保する、という意味です。
  • /28 とは:
  • 非常に小さな区画。家が16軒しか建てられない、小さなアパートの一室のようなイメージです。

AWSでは、この広さを /16(一番広い)から /28(一番狭い)の間で決めるルールになっています。

なぜ「広め」に取っておくべきなの?

システムは生き物です。最初は小さなWebサーバー1台でも、半年後には「分析基盤を置きたい」「DBを別サブネットに分けたい」「マイクロサービス化したい」と、要求が雪だるま式に増えていきます。

後から「住所」を広げるのは、現実世界で土地を拡張するくらい大変な工事(VPCの再作成など)が必要になることもあるため、「大は小を兼ねる」の精神で、少し余裕を持った設計が基本になります。

—

VPCの「セカンダリCIDR」という秘密兵器

もし、最初に決めた住所がいっぱいになってしまったらどうしましょう? AWSには「セカンダリCIDR」という、隣接する土地を買い足すような機能があります。

例えば、最初に 10.0.0.0/16 を取っていたけれど、どうしても足りなくなったとき、172.16.0.0/16 のような別の範囲を後から追加することができます。

注意すべき「落とし穴」

ここで初心者がやりがちな失敗が「オンプレミス環境との重複」です。

会社や自宅のネットワーク(VPNで繋ぐ先)が 10.0.0.0/8 を使っているのに、AWSで同じ 10.0.0.0/16 を取ってしまうと、ネットワークの郵便配達員は「どっちの 10.0.0.5 に荷物を届ければいいの!?」とパニックを起こしてしまいます。

これを「ルーティングの衝突」と呼びます。設計の際は、繋がる予定のネットワーク全体を見渡して、住所が被らないように決めるのが鉄則です。

—

実践:AWS CLIでVPCを確認する

現場では、現在のネットワーク状況をコマンドでサクッと確認することが多いです。AWS CLIがインストールされている環境であれば、以下のコマンドでVPCの現状を把握できます。

# 現在のVPC一覧を確認する
aws ec2 describe-vpcs \
    --query "Vpcs[*].{VPCID:VpcId, CIDR:CidrBlock, State:State}" \
    --output table

# 特定のVPCにセカンダリCIDRを追加する場合の例
# 既存のCIDRとは被らない範囲を慎重に選ぶことが重要です!
aws ec2 associate-vpc-cidr-block \
    --vpc-id vpc-0abc123456789def0 \
    --cidr-block 172.16.0.0/16 # 新しい住所を追加

※ コマンド実行時には、必ずそのネットワークが他のシステムと競合していないか、ネットワーク図を広げて確認してくださいね。

—

SREからのアドバイス:未来の自分を助ける設計を

最後に、現場で学んだ「失敗しないコツ」を3つだけ共有します。

1. サブネットは「役割」ごとに分ける:
一つの大きな 10.0.0.0/16 の中に、10.0.1.0/24 (Webサーバー用) 、10.0.2.0/24 (DB用) のように整理整頓しましょう。これが後々のセキュリティ設定(セキュリティグループやNACL)の管理を劇的に楽にします。
2. 余裕を持つ:
/24(256個のIP)くらいあれば、初期構築としては十分余裕があるはずです。ケチって /28 などにすると、すぐに追加のサーバーが建てられなくなります。
3. ドキュメントを残す:
「なぜこのIP範囲にしたのか」というメモを、Terraformのコメントや設計書に残しておきましょう。数年後の自分が「この謎のIP範囲、なんだっけ…?」と悩まずに済みます。

—

ネットワーク設計は、まさに「街づくり」です。最初は難しく感じるかもしれませんが、パケットという名の郵便物が迷わず目的地に届くように道を整備する作業だと考えれば、少しだけ楽しくなってきませんか?

一歩ずつ、確実に理解を深めていきましょう。応援しています!

コメント

タイトルとURLをコピーしました