IP アドレス・ネットワーク

CIDR (サイダー)

約 5 分で読めます

CIDR とは

CIDR (Classless Inter-Domain Routing、サイダーと読む) とは、IP アドレスのネットワーク部分とホスト部分の境界を柔軟に指定するための表記法です。192.168.1.0/24 のように、IP アドレスの後にスラッシュと数字 (プレフィックス長) を付けて表現します。

CIDR が登場する以前、IP アドレスはクラス A (先頭 8 ビットがネットワーク部)、クラス B (先頭 16 ビット)、クラス C (先頭 24 ビット) という固定的な区分で管理されていました。しかし、クラス B は 65,534 台分のアドレスを持ち、中規模組織には大きすぎる一方、クラス C の 254 台分では小さすぎるという問題がありました。

1993 年に導入された CIDR は、この固定的なクラス分けを廃止し、任意のビット位置でネットワークを分割できるようにしました。これにより IP アドレスの無駄な消費が大幅に削減され、インターネットのルーティングテーブルの肥大化も抑制されました。

プレフィックス長の読み方

CIDR 表記の / の後の数字 (プレフィックス長) は、IP アドレスの先頭から何ビットがネットワーク部であるかを示します。残りのビットがホスト部 (個々のデバイスに割り当てる部分) です。

/8 (255.0.0.0)
ネットワーク部 8 ビット、ホスト部 24 ビット。約 1,677 万アドレスを含む巨大なネットワーク。旧クラス A に相当。10.0.0.0/8 はプライベートアドレスとして広く使われる。
/16 (255.255.0.0)
ネットワーク部 16 ビット、ホスト部 16 ビット。65,534 アドレス。旧クラス B に相当。172.16.0.0/16 はプライベートアドレスの一つ。
/24 (255.255.255.0)
ネットワーク部 24 ビット、ホスト部 8 ビット。254 アドレス。旧クラス C に相当。家庭や小規模オフィスのネットワークで最も一般的。
/32
ホスト部 0 ビット。単一の IP アドレスを指定する。ファイアウォールルールで特定の 1 台だけを許可・拒否する場合に使う。

プレフィックス長が大きいほどネットワークは小さく (アドレス数が少なく)、小さいほどネットワークは大きくなります。/0 はすべての IP アドレス (インターネット全体) を意味し、デフォルトルートの指定に使われます。

サブネットマスクとの関係

サブネットマスクは CIDR と同じ情報を別の形式で表現したものです。/24255.255.255.0/16255.255.0.0 に対応します。

サブネットマスクでは、ネットワーク部に対応するビットを 1、ホスト部に対応するビットを 0 で表します。IP アドレスとサブネットマスクの AND 演算でネットワークアドレスが求まります。

たとえば 192.168.1.100/24 の場合、サブネットマスク 255.255.255.0 との AND 演算で 192.168.1.0 がネットワークアドレスとなり、このネットワークに属するホストは 192.168.1.1 から 192.168.1.254 の 254 台です (.0 はネットワークアドレス、.255 はブロードキャストアドレスとして予約)。

CIDR 表記の方が簡潔で計算しやすいため、現在のネットワーク設計では CIDR 表記が主流です。ただし、OS のネットワーク設定画面ではサブネットマスク形式が使われることもあるため、両方の対応関係を理解しておくと実務で役立ちます。

AWS セキュリティグループでの実用例

AWS のセキュリティグループやネットワーク ACL では、CIDR 表記でアクセス元・アクセス先を指定します。クラウドインフラを扱う上で CIDR の理解は必須です。

  • 0.0.0.0/0: すべての IPv4 アドレスを意味する。Web サーバーの HTTP/HTTPS ポートを公開する場合に使うが、SSH ポートにこれを設定すると全世界からログイン試行を受けるため危険。
  • ::/0: すべての IPv6 アドレスを意味する。IPv4 の 0.0.0.0/0 に相当。
  • 203.0.113.50/32: 特定の 1 台の IP アドレスのみを許可する。SSH アクセスを自社オフィスの IP に限定する場合に使用。
  • 10.0.0.0/16: VPC 内のプライベートサブネット全体を指定する。内部通信の許可ルールに使う。

AWS VPC を設計する際は、VPC の CIDR ブロック (例: 10.0.0.0/16) を決め、その中をサブネットに分割します (例: 10.0.1.0/24 をパブリックサブネット、10.0.2.0/24 をプライベートサブネット)。将来の拡張を見据えて、VPC の CIDR は余裕を持ったサイズにしておくことが推奨されます。

よくある誤解

/24 はクラス C と同じ意味
/24 は先頭 24 ビットがネットワーク部であることを示すだけで、旧クラス C の概念とは独立しています。CIDR ではクラスの概念が廃止されており、/24 は任意のアドレス範囲に適用できます。たとえば 10.0.1.0/24 はプライベートアドレスの /24 であり、旧クラス A の範囲内です。
CIDR は IPv4 だけの仕組み
CIDR は IPv6 でも同様に使われます。IPv6 では /64 が標準的なサブネットサイズで、/48 が一般的なサイト割り当てです。表記法は同じで、2001:db8::/32 のようにプレフィックス長を指定します。
共有する
B!

関連用語

関連記事