192.168.0.0/24 の /24 とは:CIDR とサブネットの計算方法

IP アドレスの後ろの /24 の意味、サブネットマスクとの関係、ネットワークアドレス・ブロードキャストアドレスと使えるホスト数の求め方、プライベート IP の範囲を例とともにまとめました。

開発ネットワーク

ルーターの設定画面やクラウドのコンソールでは、192.168.0.0/24 や 10.0.0.0/16 のような表記をよく見かけます。スラッシュの後ろの数字は、IP アドレスの先頭から何ビットがネットワークを表すかを示しています。この表記法を CIDR(Classless Inter-Domain Routing、RFC 4632)と呼びます。

IPv4 アドレスは32ビット

192.168.1.130 は、人が読みやすいように8ビットずつ区切って10進数で書いたもので、実際には1つの32ビットの数です。

192      .168      .1        .130
11000000 10101000 00000001 10000010

この32ビットを2つの部分に分けます。

  • ネットワーク部:同じネットワークにある機器が共有する先頭のビット
  • ホスト部:ネットワークの中で機器を1台ずつ区別する後ろのビット

/24 は、先頭の24ビットがネットワーク部、残りの8ビットがホスト部という意味です。

サブネットマスクは同じ情報の別の書き方

ネットワーク部を1、ホスト部を0で埋めた32ビットを10進数で書いたものがサブネットマスクです。/24 と 255.255.255.0 は同じ意味です。

CIDR サブネットマスク アドレス数 使えるホスト数
/8 255.0.0.0 16,777,216 16,777,214
/16 255.255.0.0 65,536 65,534
/24 255.255.255.0 256 254
/26 255.255.255.192 64 62
/28 255.255.255.240 16 14
/30 255.255.255.252 4 2
/32 255.255.255.255 1 (単一ホスト)

アドレス数は 2^(32 − プレフィックス長) です。/24 なら 2⁸ = 256個、/26 なら 2⁶ = 64個です。プレフィックスが1増えるごとに、アドレス数は半分になります。

なぜ2つ引くのか:ネットワークアドレスとブロードキャストアドレス

1つのサブネットのうち、2つのアドレスは機器に割り当てられません。

  • ネットワークアドレス:ホスト部のビットがすべて0のアドレス。ネットワークそのものを表します。
  • ブロードキャストアドレス:ホスト部のビットがすべて1のアドレス。ネットワーク内のすべての機器に送るときに使います。

そのため 192.168.0.0/24 で機器に割り当てられるのは 192.168.0.1 から 192.168.0.254 までの254個です。例外として、2台だけを結ぶリンクでは /31 を使って2つのアドレスを両方使うことができ(RFC 3021)、/32 は1つのアドレスそのものを表します。

実際に計算する:192.168.1.130/26

  1. ブロックサイズを求めます。/26 はホスト部が6ビットなので 2⁶ = 64 です。最後のオクテットが64ごとに区切られます(0、64、128、192)。
  2. 130 が入る区間を探します。128〜191 です。
  3. 結果:
項目 値
ネットワークアドレス 192.168.1.128
ブロードキャストアドレス 192.168.1.191
使える範囲 192.168.1.129 〜 192.168.1.190
使えるホスト数 62
サブネットマスク 255.255.255.192

コンピューターはこれをビット演算で求めます。アドレスとマスクの AND がネットワークアドレス、ネットワークアドレスとマスクを反転した値(ワイルドカードマスク、0.0.0.63)の OR がブロードキャストアドレスです。

2台が同じネットワークにあるかを判断する

機器は宛先アドレスと自分のサブネットマスクの AND をとり、結果が自分のネットワークアドレスと同じなら直接送り、違えばデフォルトゲートウェイ(通常はルーター)に送ります。192.168.1.130/26 と 192.168.1.100 は先頭3つのオクテットが同じに見えても、100 は 64〜127 の区間なので別のサブネットです。設定は合っているのに通信できないときは、まずマスクを確認してみる価値があります。

プライベート IP アドレスの範囲

家庭や社内のネットワークで使うアドレスは、RFC 1918 が定める3つの範囲のどれかです。インターネット上ではルーティングされないため、複数の場所で同じアドレスを重ねて使っても問題ありません。

ブロック 範囲
10.0.0.0/8 10.0.0.0 〜 10.255.255.255
172.16.0.0/12 172.16.0.0 〜 172.31.255.255
192.168.0.0/16 192.168.0.0 〜 192.168.255.255

172.16.0.0/12 が 172.31 までなのは、/12 が2番目のオクテットの先頭4ビットだけをネットワーク部に使うからです(16〜31 の16個)。このほか 169.254.0.0/16 は、DHCP でアドレスを取得できなかったときに機器が自分で付けるリンクローカルアドレス(RFC 3927)です。このアドレスが表示されたら、まずルーターとの接続を確認します。

計算ツールで確かめる

IP サブネット計算に IPv4 アドレスと CIDR プレフィックス(またはサブネットマスク)を入れると、ネットワークアドレス・ブロードキャストアドレス、使えるホストの範囲と数、ワイルドカードマスクをすぐに表示します。上の 192.168.1.130/26 を入れて、計算を照らし合わせてみてください。

参考

  • RFC 4632, Classless Inter-domain Routing (CIDR)
  • RFC 1918, Address Allocation for Private Internets
  • RFC 3021, Using 31-Bit Prefixes on IPv4 Point-to-Point Links
  • RFC 3927, Dynamic Configuration of IPv4 Link-Local Addresses

ブログへ