🧱

【AWS】CIDRブロックをわかりやすく解説

に公開

CIDRって何?

CIDR = Classless Inter-Domain Routing(クラスレス・ドメイン間ルーティング)

AWSの学習などをしていて、この言葉が出てきたことがあるのではないでしょうか。
簡単に言うと、IPアドレスの範囲を効率的に表現する方法です。

IPアドレスの正体

普段見ているIPアドレスは実は32個の0と1の組み合わせなんです。

192.168.1.100 を2進数で表すと:
11000000.10101000.00000001.01100100
↑32個の0と1(32ビット)

/24の意味を理解しよう

/24 = 最初の24個のビットを固定する

192.168.1.0/24 の場合:

11000000.10101000.00000001.xxxxxxxx
↑―――――24個固定―――――↑ ↑8個変更可能

固定部分: 192.168.1
変更可能: 0~255(8ビットで表現できる数)

つまり、192.168.1.0/24192.168.1.0から192.168.1.255までの256個のIPアドレスを表します。

/16の場合はどうなる?

/16 = 最初の16個のビットを固定する

10.0.0.0/16 の場合:

00001010.00000000.xxxxxxxx.xxxxxxxx
↑――16個固定―↑ ↑――16個変更可能――↑

固定部分: 10.0
変更可能: 0.0~255.255(16ビットで表現できる数)

10.0.0.0/16は約65,000個のIPアドレスを表します。

ビット数と利用可能IP数の関係

残りビット数 利用可能IP数 計算式
8ビット 256個 2^8
16ビット 65,536個 2^16
24ビット 16,777,216個 2^24

身近な例で理解する

郵便番号のようなもの

/16 → 都道府県まで指定(東京都)
/24 → 市区町村まで指定(東京都渋谷区)
/32 → 完全な住所(東京都渋谷区○○1-2-3)

数字が大きいほど細かく指定され、利用できるIPアドレスの数は少なくなります。

よく使われるCIDR一覧

CIDR表記 利用可能IP数 用途例
/32 1個 単一ホスト指定
/28 16個 小規模サブネット
/24 256個 一般的なサブネット
/16 65,536個 大きなネットワーク
/8 16,777,216個 非常に大きなネットワーク

AWSでの実用例

VPC作成時

// VPC全体のCIDRブロック
VpcCidrBlock: "10.0.0.0/16"  // 65,536個のIPアドレス

// サブネット分割
PublicSubnet: "10.0.1.0/24"   // 256個
PrivateSubnet: "10.0.2.0/24"  // 256個

セキュリティグループ設定

{
  "IpProtocol": "tcp",
  "FromPort": 80,
  "ToPort": 80,
  "CidrIp": "0.0.0.0/0"  // 全てのIPアドレスからアクセス許可
}

{
  "IpProtocol": "ssh", 
  "FromPort": 22,
  "ToPort": 22,
  "CidrIp": "203.0.113.0/24"  // 特定のネットワークのみ許可
}

プライベートIPの範囲

インターネットで使用されない、内部ネットワーク専用のIP範囲:

10.0.0.0/8      (10.0.0.0 - 10.255.255.255)
172.16.0.0/12   (172.16.0.0 - 172.31.255.255)  
192.168.0.0/16  (192.168.0.0 - 192.168.255.255)

まとめ

CIDRブロックは「どこまでを住所の固定部分にするか」を決める仕組みです。

  • 数字が小さい(/8, /16)→ 大きなネットワーク、多くのIPアドレス
  • 数字が大きい(/24, /28)→ 小さなネットワーク、少ないIPアドレス

Discussion