IPv4のCIDRとサブネット計算
IPアドレスの後ろに付く「/24」や「/26」。数字が大きいほど範囲は小さくなります。設定画面の値を読むときは、アドレス全体の個数と、端末に割り当てられる個数を分けて考えると混乱しません。192.0.2.70/26を使って、範囲の求め方を順にたどります。
/26は先頭26ビットが共通という意味
IPv4アドレスは32ビットです。/26なら先頭26ビットがネットワークを表す共通部分で、残る6ビットでその範囲内の位置を表します。CIDRは、この境界を昔のクラスA・B・Cに固定せず指定する書き方です。ドット付きのサブネットマスクなら、共通部分を1、残りを0にします。
よく見る長さを比べる
総数は2の「32 − プレフィックス長」乗です。例えば/26なら2の6乗で64。これはまだ、予約アドレスなどを差し引く前の数です。RFC 4632 §3.1にプレフィックス表記とブロックの大きさが示されています。
| 表記 | サブネットマスク | 範囲内のアドレス総数 |
|---|---|---|
| /24 | 255.255.255.0 | 256 |
| /26 | 255.255.255.192 | 64 |
| /30 | 255.255.255.252 | 4 |
| /31 | 255.255.255.254 | 2 |
| /32 | 255.255.255.255 | 1 |
192.0.2.70/26の範囲を求める
この例では最後の8ビットのうち上位2ビットが固定されます。区切りは64個ごとになり、末尾0〜63、64〜127、128〜191、192〜255の4ブロックに分かれます。70が入るのは64〜127です。IPアドレスとマスクのビット単位のANDを取っても、先頭アドレスの192.0.2.64を求められます。
計算結果の読み方
入力した70をそのままネットワークの先頭とするわけではありません。なお192.0.2.0/24はRFC 5737の説明用アドレスで、実運用先へ割り当てる例ではありません。
| 項目 | 結果 |
|---|---|
| 入力したホスト | 192.0.2.70/26 |
| ネットワーク表記 | 192.0.2.64/26 |
| 範囲 | 192.0.2.64〜192.0.2.127 |
| 通常のサブネットのブロードキャスト | 192.0.2.127 |
| 通常のホスト候補 | 192.0.2.65〜192.0.2.126(62個) |
ホスト数から2を引く理由と例外
通常のIPv4サブネットでは、ホスト部がすべて0のアドレスをネットワークの識別に、すべて1のアドレスをサブネットのブロードキャストに使います。そこで/26なら64 − 2 = 62個がホスト候補になります。ただし「必ず2を引く」と覚えると、/31と/32でつまずきます。
/31と/32を読む
/31は2台の端点を結ぶリンクについての規定で、一般的なLANへ一律に適用するものではありません。両端の機器・接続方式の対応が前提です。RFC 3021 §2.1–2.2がこの扱いを定めています。
| 表記 | 読み方 |
|---|---|
| 192.0.2.10/31 | RFC 3021対応のポイントツーポイントリンクなら、.10と.11の両方を端点に使う。サブネット向けのブロードキャストはない |
| 192.0.2.70/32 | 1つのアドレスだけを指定する。経路表ではそのアドレス宛てのホストルートとして使われる |
大きな範囲を小さく分ける
192.0.2.0/24を同じ大きさの4つへ分けるなら、ネットワーク部を2ビット増やして/26にします。分割後は192.0.2.0/26、192.0.2.64/26、192.0.2.128/26、192.0.2.192/26です。どの範囲も64個で、重なりや隙間はありません。
アドレスの数と使える台数は別
通常の/24ならホスト候補は254個、4つの/26なら62 × 4 = 248個です。分割した各サブネットに予約するアドレスがあるためです。さらにゲートウェイ、固定割り当て、クラウドサービス独自の予約などがあれば、端末用に空いている数は減ります。計算だけでは実際の空きアドレスや到達性までは分かりません。
計算機で境界を比べる
Online Toolsのサブネット計算機に192.0.2.70/26を入力すると、マスク、ネットワーク、範囲、ホスト数を比べられます。/25と/27でも試すと、同じアドレスがどの大きさの範囲へ入るかが見えてきます。計算処理はブラウザ内で行われ、入力したIPアドレスへの接続試験は行いません。
/31では欄の名前より用途を見る
この計算機は/31を2個、/32を1個として数えます。一方、ブロードキャスト欄には計算上の末尾アドレスも表示されます。/31のポイントツーポイントで、その末尾をブロードキャストに使うという意味にはなりません。
仕様と、次に読みたい解説
RFC 4632 §3.1:CIDR表記、RFC 3021 §2:/31の扱い、RFC 1122 §3.2.1.3:IPv4の特殊アドレス(/31はRFC 3021による更新を適用)。名前からアドレスを調べる流れはDNSの基礎、アドレスから場所を推定する限界はIPアドレスと位置情報へ。