IPアドレスのCIDR記法 学習メモ

スポンサーリンク

IPアドレスの後ろに「/数値」が付いていることがあるけど、どういう意味かわかってなかったので調べてみた。

IPアドレスの基礎

IPv4IPアドレスは32bitで構成されている。
そのIPアドレスは、ネットワーク上ではネットワークアドレスとホストアドレスに分けて認識される。

ネットワークアドレス(別名:ネットワーク部、プレフィックス)
ホストアドレス(別名:ホスト部)

32bitのIPアドレスのうち、どこまでがネットワークアドレスで、どこからがホストアドレスかを決める方法は2種類ある。クラスを使ったクラスフルと、クラスを使わないクラスレス。

その他のIPアドレスの基礎的な内容は、下記のページがわかりやすかった。
IPアドレスの基礎知識 - Qiita

クラスフル(classfull)

クラスフルではネットワークアドレスに8ビット(クラスA)、16ビット(クラスB)、24ビット(クラスC)のいずれかを割り当てていた。
先頭のビット列でクラスA~クラスEまで区別できる。
クラスDはIPマルチキャスト用途。
クラスEは研究用途。

最小ブロック(クラスC)では、256個のアドレスしかなく、多くの企業では少なすぎた。
かと言って、それよりも大きいブロックは、クラスA、クラスBしかなく大雑把過ぎた。

クラスが区別できれば、サブネットマスクも決まる。

クラスレス(classless)

CIDR(Classless Inter-Domain Routing)

サイダーと読む。
CIDRは、クラスを使わないIPアドレスの割り当てと、経路情報の集成を行う技術。
CIDRは「可変長サブネットマスク (VLSM)」に基づき、ネットワークアドレスを可変長で割り当て可能にした。

CIDR記法は、IPアドレスの後ろに「/数値」が付く記載方法。例:a.b.0.0/16

CIDR記法の例

IP/CIDR ネットワークアドレス長 ホストアドレス長 サブネットマスク 扱えるホスト数(*1) 備考
a.b.c.0/24 24bit 8bit 255.255.255.000 256 クラスCと同等
a.b.c.0/22 22bit 10bit 255.255.252.000 1,024
a.b.c.0/21 21bit 11bit 255.255.248.000 2,048
a.b.0.0/16 16bit 16bit 255.255.000.000 65,536 クラスBと同等
a.0.0.0/8 8bit 16bit 255.000.000.000 16,777,216 クラスAと同等

*1 扱えるホスト数は、ブロードキャスト用、ネットワーク識別用、ゲートウェイを含めるかどうかによって解釈が異なる。

利用可能なアドレス数から2を引く必要がある。最大のアドレスと最小のアドレスは、ブロードキャスト用とネットワークの識別用に割り当てられる。詳細は RFC 1812 を参照。また、一般にゲートウェイIPアドレスを1つ必要とするので、1つのサブネットに配置できる(ゲートウェイ以外の)ホスト数は全アドレス数から3を引く必要がある。

参考

Classless Inter-Domain Routing - Wikipedia