CIDRとは?仕組み・表記・計算方法からIPv6やBGPでの活用までわかる完全ガイド
CIDR とは — 概要
CIDR(Classless Inter-Domain Routing、クラスレス・インタードメイン・ルーティング)は、IPアドレッシングと経路集約(サマリ)を目的とした方式です。1990年代初頭に導入され、従来のクラスフル方式(クラスA/B/C)で生じていたアドレスの浪費やルーティング表の急増といった問題を解決しました。CIDR によって、IPアドレスは「プレフィックス(例:192.0.2.0/24)」という形式で表され、可変長のサブネットマスクを使って柔軟にアドレス割当や集約を行えます。
背景 — なぜ CIDR が必要だったか
初期のIPアドレス設計はクラスフル方式(A/B/C)で、ネットワークは固定長のブロック(/8、/16、/24)で割り当てられました。しかしインターネットの急速な拡大に伴い、以下の問題が顕在化しました。
- アドレスの非効率:組織の実際の必要量に比べて大きすぎる固定サイズが割り当てられ、アドレス空間が浪費された。
- ルーティング表の増大:個別に割り当てられた小さなネットワークがインターネット全体のルーティング表に多数登録され、ルータのメモリと計算コストを圧迫した。
これらの問題に対応するため、1993年にCIDRが提案・導入され、アドレス割当と経路集約(スーパー ネット化)が可能になりました(RFC 1518 / RFC 1519 など)。
CIDR の基本概念と表記法
CIDR 表記は「ネットワークアドレス/プレフィックス長」という形式を取ります。例:192.0.2.0/24。
- ネットワークアドレス:そのプレフィックスに対応する最小のアドレス(ネットワーク部分が指定された値でホスト部が0)。
- プレフィックス長(/n):ネットワーク部のビット数を示します。IPv4 では 0〜32、IPv6 では 0〜128。
プレフィックス長はサブネットマスクに対応します。例えば /24 は 255.255.255.0、/16 は 255.255.0.0 に相当します。プレフィックス→マスク、マスク→プレフィックスの変換は二進表現で対応するビット数を数えて行います。
プレフィックス長とホスト数の計算(IPv4)
IPv4 での理論上のアドレス数は 2^(32 - プレフィックス長)。実務上の「利用可能ホスト数」は従来ネットワークアドレスとブロードキャストアドレスを除くため 2^(32 - プレフィックス長) - 2 ですが、例外もあります(後述)。
- /24 → 2^(8) = 256 アドレス(利用可能ホスト数 254)
- /25 → 128 アドレス(利用可能ホスト数 126)
- /30 → 4 アドレス(利用可能ホスト数 2、よく PPP 等のリンクで使用)
- /31 → 2 アドレス(通常はネットワーク+ブロードキャストだが、RFC 3021 により点対点リンクで /31 をホスト用に使う慣習が認められている)
- /32 → 単一アドレス(ホスト1台を指す)
サブネット化(分割)とスーパー・ネット(集約)の具体例
主な操作は「サブネット化(大きなネットワークを小さく分ける)」と「集約(複数の連続した小さなプレフィックスをまとめてより短いプレフィックスにする)」です。
例:192.168.0.0/24 を /26 に分割する場合
- 192.168.0.0/26(アドレス範囲 192.168.0.0 - 192.168.0.63)
- 192.168.0.64/26(64 - 127)
- 192.168.0.128/26(128 - 191)
- 192.168.0.192/26(192 - 255)
集約の例:192.168.0.0/25(0 - 127)と 192.168.0.128/25(128 - 255)は連続かつ整列しているため、これらは 192.168.0.0/24 にまとめられます。集約可能であるための条件は「連続している」「より短いプレフィックスに整列している(アドレスの境界が新しいプレフィックス長に合っている)」ことです。ビット表現で示すと理解しやすいです。
ネットワークアドレス計算(ビット演算)
ネットワークアドレスは IP アドレスとネットワークマスクのビットANDで計算されます。例:
- IP:192.168.10.66 → 11000000.10101000.00001010.01000010
- マスク:255.255.255.192 (/26) → 11111111.11111111.11111111.11000000
- AND結果(ネットワーク):192.168.10.64 → 11000000.10101000.00001010.01000000
この計算によって「この IP はどのプレフィックスに属するか」を判定できます。ルータは受信パケットの宛先に対して longest-prefix match(最長一致)を行い、最も具体的なプレフィックスに基づいて転送先を決定します。
ルーティングと経路集約(BGP における効果)
CIDR の導入によって、ISP は顧客に割り当てた複数の小さいネットワークをまとめて上位に向けてアナウンスできます(サマリルート)。これができると、グローバルなルーティングテーブルのエントリ数が大幅に減り、ルータの負荷が軽減されます。BGP はプレフィックス単位で経路情報をやり取りし、経路の選択はプレフィックス長の長い(より具体的な)エントリが優先されます。
IPv6 と CIDR
CIDR の概念は IPv6 にも適用され、プレフィックス表記(例:2001:db8::/32)がそのまま使われます。IPv6 ではアドレス空間が非常に大きく、アドレス枯渇の問題は基本的に別次元ですが、柔軟な割当や経路集約のためにプレフィックス表現が使われます。実務上はサブネットを /64 にすることが一般的(SLAAC の要件等)で、ISP の割当は /32 や /48 が目安とされる運用慣行があります(規定は文脈による)。
実務上のポイントと落とし穴
- 境界整列の確認:集約する際はプレフィックス整列(ネットワークアドレスのビットが揃っているか)を必ず確認する。整列していないと誤った集約でルーティング障害が発生する。
- /31 の扱い:点対点リンクでは /31 を使ってアドレスを節約する運用が認められている(RFC 3021)。ただし機器や管理ツールの対応状況を確認すること。
- ブロードキャストの扱い:IPv4 はブロードキャスト概念があるため小さなサブネットでは注意が必要。IPv6 にはブロードキャストはなくマルチキャストで代替される。
- VLSM(可変長サブネットマスク):CIDR は VLSM を可能にする。組織内ネットワーク設計で、異なるサイズのサブネットを混在させて効率的にアドレスを割り当てられる。
- セキュリティとフィルタリング:BGP フィルタやアクセスコントロールでプレフィックス単位の管理が行われる。誤ったアナウンス(ハイジャック)や過度な集約の副作用に注意。
計算や設計で使えるツール
プレフィックスやアドレス範囲の計算は手計算でも可能ですが、ネットワーク電卓やコマンド(ipcalc、sipcalc、Windows のネットワークツール)、あるいは多くの Web ベースツールを使うとミスが減ります。設計時はアドレスの将来拡張や冗長構成も考慮して余裕を持った割当を行うことが推奨されます。
まとめ
CIDR はインターネットのスケーラビリティを支える重要な基盤技術です。クラスフル方式の欠点を解消し、可変長プレフィックスによる柔軟な割当と経路集約を可能にしました。ネットワーク設計ではプレフィックスのビット操作と整列ルールを理解し、最長一致ルーティングや集約の条件を意識した運用が重要です。IPv4 だけでなく IPv6 にも同様のプレフィックス概念が適用されます。
参考文献
- RFC 1518 — An Architecture for IP Address Allocation with CIDR
- RFC 1519 — Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy
- RFC 3021 — Using 31-Bit Prefixes on IPv4 Point-to-Point Links
- RFC 4632 — Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Strategy
- RFC 4291 — IP Version 6 Addressing Architecture
- IANA — IPv4 Address Space Registry
- Wikipedia(日本語) — CIDR


