手当たり次第に書くんだ

飽きっぽいのは本能

サブネット計算の考え方 – CIDR、ネットマスク、利用可能 IP 数を整理する

ネットワークエンジニアであれば、IPv4 のサブネット計算は何度も行うことになります。ただ、毎回 2 進数に戻して考えるというより、実際にはよく使うパターンとブロックサイズを頭の中で扱っていることが多いと思います。

この記事では、サブネット計算を暗記だけにせず、CIDR、サブネットマスク、ブロックサイズ、利用可能 IP 数の関係として整理します。

サブネット計算で見るべきもの

サブネット計算で混乱しやすいのは、いくつかの話が同時に出てくるからです。まずは、次の4つを分けて考えると整理しやすくなります。

  • マスク長: /24/28 のような CIDR 表記
  • サブネットマスク: 255.255.255.0255.255.255.240 のような表記
  • ブロックサイズ: そのサブネットが何個の IP アドレスを含むか
  • 利用可能 IP 数: ネットワークアドレスとブロードキャストアドレスを除いたホスト数

特に重要なのは、ブロックサイズです。ネットワークアドレス、ブロードキャストアドレス、次のサブネットの境界は、ブロックサイズがわかると一気に見えやすくなります。

よく使う CIDR と利用可能 IP 数

まずは、実務でよく出てくる /24 から /30 までを押さえると十分です。

CIDRサブネットマスク総 IP 数利用可能 IP 数4th Octet の刻み
/24255.255.255.0256254256
/25255.255.255.128128126128
/26255.255.255.192646264
/27255.255.255.224323032
/28255.255.255.240161416
/29255.255.255.248868
/30255.255.255.252424

/24 は 256 個の IP アドレスを含み、一般的な LAN セグメントでよく使われます。/28 なら 16 個単位、/30 なら 4 個単位です。

通常の IPv4 サブネットでは、先頭がネットワークアドレス、最後がブロードキャストアドレスになるため、利用可能 IP 数は総 IP 数から 2 を引いて考えます。

ブロックサイズで考える

サブネット計算を簡単にするには、256 - サブネットマスクの値 でブロックサイズを見るのが実用的です。たとえば /28255.255.255.240 なので、4th Octet は 256 - 240 = 16 の刻みになります。

  • /25: 256 - 128 = 128
  • /26: 256 - 192 = 64
  • /27: 256 - 224 = 32
  • /28: 256 - 240 = 16
  • /29: 256 - 248 = 8
  • /30: 256 - 252 = 4

つまり、192.168.10.0/28 なら、サブネットの境界は .0, .16, .32, .48 のように 16 ずつ進みます。

オクテットとマスク値の関係

8 ビット境界ではない /19/26 が苦手な場合は、どのオクテットで区切っているのかを見るとわかりやすいです。

マスク値1st Octet2nd Octet3rd Octet4th Octet
0/8/16/24/32
128/9/17/25
192/10/18/26
224/11/19/27
240/12/20/28
248/13/21/29
252/14/22/30
254/15/23/31
255/16/24/32

たとえば /19 は 3rd Octet の 224 に対応します。つまりサブネットマスクは 255.255.224.0 です。この場合、3rd Octet は 256 - 224 = 32 の刻みで進みます。

計算例: 192.168.10.16/28

サブネットマスク

/28255.255.255.240 です。

ブロックサイズ

256 - 240 = 16 なので、4th Octet は 16 ずつ区切られます。

範囲

  • ネットワークアドレス: 192.168.10.16
  • 利用可能 IP: 192.168.10.17 から 192.168.10.30
  • ブロードキャストアドレス: 192.168.10.31
  • 次のサブネット: 192.168.10.32/28

/28 は総 IP 数が 16 個なので、通常のホスト用途では利用可能 IP 数は 14 個です。

計算例: 192.168.32.0/19

サブネットマスク

/19255.255.224.0 です。

ブロックサイズ

3rd Octet が 224 なので、256 - 224 = 32 です。つまり、3rd Octet は 0, 32, 64, 96 のように 32 ずつ進みます。

範囲

  • ネットワークアドレス: 192.168.32.0
  • 利用可能 IP: 192.168.32.1 から 192.168.63.254
  • ブロードキャストアドレス: 192.168.63.255
  • 次のサブネット: 192.168.64.0/19

/19 はホスト部が 13 ビットなので、総 IP 数は 2^13 = 8192 個です。通常の利用可能 IP 数は 8192 - 2 = 8190 個です。

クラス A/B/C は現在の設計では主役ではない

クラス A、クラス B、クラス C という言い方は、歴史的なクラスフルネットワークの文脈では意味があります。ただ、現在の設計では CIDR を前提に考えるのが基本です。

192.168.0.0 だからクラス C、というような説明だけで止まってしまうと、/23/27 のような現実の設計を扱いにくくなります。実務では、クラス名よりも CIDR、マスク長、ブロックサイズで考える方が自然です。

サブネット計算でよくある間違い

  • 総 IP 数と利用可能 IP 数を混同する
  • ネットワークアドレスをホストに割り当てようとする
  • ブロードキャストアドレスをホストに割り当てようとする
  • /24 以外の境界を 4th Octet だけで考えてしまう
  • CIDR ではなくクラス A/B/C だけで判断しようとする

特に /19/21 のように 3rd Octet で区切るサブネットでは、4th Octet だけを見ていると範囲を間違えます。どのオクテットの値が変化しているのかを見ることが重要です。

参考書籍

参考
書籍
参考書籍

マスタリング TCP/IP 入門編 第6版

TCP/IP、Ethernet、VLAN、ルーティングなど、ネットワークの基礎を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

関連する記事

まとめ

サブネット計算は、2 進数を毎回すべて書き出さなくても、CIDR、サブネットマスク、ブロックサイズの関係を押さえるとかなり楽になります。

特に、256 - マスク値 でブロックサイズを見る考え方は実用的です。あとは、そのブロックの先頭がネットワークアドレス、最後がブロードキャストアドレス、その間が利用可能 IP であると考えれば、多くの IPv4 サブネットは整理できます。

サブネット計算の考え方 – CIDR、ネットマスク、利用可能 IP 数を整理する

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る