IP範囲→CIDR変換計算ツールとは?
このツールは、開始と終了のIPv4アドレスを入力すると、その範囲全体をカバーできる最小の単一CIDRブロック(/プレフィックス)を返します。CIDR(クラスレス・インタードメイン・ルーティング)表記は、アドレスのまとまりを「ベースアドレス+スラッシュ+プレフィックス長」の形で表すもので、たとえば 192.168.0.0/24 のように記述します。IPv4で世界共通に使われる仕組みで、国やネットワークを問わずそのまま利用できます。
使い方
範囲の先頭アドレスを 開始IPアドレス に、末尾アドレスを 終了IPアドレス に入力して実行してください。計算ツールは両方のアドレスを32ビット整数に変換し、その間にあるアドレス数を数えたうえで、それらすべてを含む「最小の2のべき乗ブロック」のプレフィックス長を算出します。
計算式のしくみ
IPv4アドレスはそれぞれ32ビットの整数に対応します。範囲内のアドレス数は \(\text{count} = \text{end} - \text{start} + 1\) で求められます。CIDRブロックが保持するアドレス数は必ず2のべき乗で、\(/n\) ブロックは \(2^{(32-n)}\) 個のアドレスを含みます。\(\text{count}\) 個のアドレスをカバーするには、これを次の2のべき乗へ切り上げて $$\text{blockSize} = 2^{\left\lceil \log_2(\text{count}) \right\rceil}$$ とし、プレフィックスは $$32 - \log_2(\text{blockSize})$$ で得られます。
具体例で確認
範囲を 192.168.0.0 から 192.168.0.255 とします。整数に直すとそれぞれ 3,232235520 と 3,232235775 なので \(\text{count} = 256\) です。\(256 = 2^8\) なので、ブロックサイズは256、プレフィックスは $$32 - 8 = 24$$ となり、結果は /24 です。
よくある質問
結果は常にCIDR境界にぴったり合いますか? プレフィックスはアドレス数に「収まる」最小値ですが、単一のCIDRブロックはアドレスの境界にも揃っている必要があります。開始アドレスがその境界上にない場合、その範囲を表すには複数の小さなブロックが必要になることがあります。
開始と終了を逆に入力したら? 終了の方が小さい場合は、計算ツールが自動的に開始と終了を入れ替えます。
IPv6にも対応していますか? いいえ。本ツールはIPv4(32ビット)の範囲のみに対応しています。