InfraAcademy

InfraAcademy Blog

サブネットマスクとは?CIDR・計算方法・ネットワーク範囲を初心者向けに解説

| #ネットワーク #ITパスポート講座 #IT初心者
Linuxをブラウザで試してみる

Linux・ネットワーク・AWSを、環境構築なしで実践学習できます

こんにちは、インフラエンジニアのryuです。

ネットワークの勉強を始めると、IPアドレスの後ろに付く/24や、255.255.255.0という数字が出てきます。

この数字がサブネットマスクです。

サブネットマスクは、IPアドレスのどこまでがネットワークを表し、どこからが端末を表すのかを区別するための情報です。

サブネットマスクを理解すると、2台のPCが同じネットワークにいるのか、何台の端末へIPアドレスを割り当てられるのかを判断できます。

この記事では、サブネットマスクの役割、CIDR表記、ネットワークアドレス、ブロードキャストアドレス、利用可能なホスト数の計算方法を初心者向けに解説します。

サブネットマスクとは

サブネットマスクとは何なのでしょうか?

サブネットマスクは、IPv4アドレスのネットワーク部とホスト部を区別するために使います。

IPアドレスだけを見ても、どこまでがネットワークを表しているのか判断できません。

たとえば、次のIPアドレスがあるとします。

192.168.10.20

この数字だけでは、192.168.10までがネットワーク部なのか、192.168までなのか分かりません。

そこで、サブネットマスクをセットで確認します。

IPアドレス:      192.168.10.20
サブネットマスク: 255.255.255.0
CIDR表記:        192.168.10.20/24

この場合、先頭の24ビットがネットワーク部、残りの8ビットがホスト部です。

サブネットマスクはネットワークへ接続できるPCの台数だけを表すものではありません。

ネットワークの範囲を決め、端末が通信相手を同一ネットワークと判断するためにも使われます。

IPアドレスのネットワーク部とホスト部

サブネットマスクを理解するには、IPアドレスがネットワーク部とホスト部に分かれることを押さえましょう。

IPアドレスを住所に例えた図

ネットワーク部は、端末が所属するネットワークを識別します。

ホスト部は、そのネットワーク内の端末やネットワークインターフェースを識別します。

部分 役割
ネットワーク部 所属するネットワークを識別する 192.168.10
ホスト部 ネットワーク内の端末を識別する 20

チームで例えるなら、ネットワーク部がチーム番号、ホスト部がメンバー番号です。

同じチーム番号を持つ端末は、同一ネットワークに所属します。

サブネットマスクでネットワーク部とホスト部を区別する図

ただし、点で区切られた位置がそのまま境界になるとは限りません。

/25/27のように、オクテットの途中でネットワーク部とホスト部が分かれることもあります。

IPアドレスの基本から確認したい方は、次の記事も参考にしてください。

【関連記事】IPアドレスとは?仕組み・種類・確認方法を初心者向けに解説

サブネットマスクとCIDR表記の関係

サブネットマスクには、10進数表記とCIDR表記があります。

CIDR表記 サブネットマスク
/8 255.0.0.0
/16 255.255.0.0
/24 255.255.255.0
/25 255.255.255.128
/26 255.255.255.192
/27 255.255.255.224

CIDRは、Classless Inter-Domain Routingの略です。

/24は、IPv4アドレス32ビットのうち、先頭24ビットをネットワーク部として使うことを表します。

10進数のサブネットマスクを2進数へ変換すると、CIDRとの関係が分かります。

255.255.255.0
11111111.11111111.11111111.00000000

1が24個並んでいるため、CIDR表記では/24です。

1になっている部分がネットワーク部、0になっている部分がホスト部です。

クラスA・B・Cは現在の設計で必要?

以前は、IPv4アドレスをクラスA・B・Cへ分けて扱うクラスフルネットワークが使われていました。

クラス 既定のプレフィックス サブネットマスク
クラスA /8 255.0.0.0
クラスB /16 255.255.0.0
クラスC /24 255.255.255.0

元記事ではクラスを中心に説明していましたが、現在のネットワーク設計ではCIDRを使うのが基本です。

必要な端末数やネットワーク構成に合わせて、/22/26/28などを柔軟に選択します。

クラスフルネットワークでIPアドレスが余るイメージ

クラスA・B・Cは、資格試験や古い資料を理解するための歴史的な知識として覚えておけばよいでしょう。

実際の設計では、CIDR表記と必要なホスト数を確認することが重要です。

サブネットマスクで利用できるIPアドレス数が変わる

IPv4アドレスは32ビットです。

CIDRの数字が大きくなるほどネットワーク部が増え、ホスト部が減ります。そのため、一つのネットワークへ割り当てられるIPアドレス数も少なくなります。

一般的なIPv4サブネットで利用可能なホスト数は、次の式で計算します。

2のホスト部ビット数乗 − 2

2を引く理由は、ネットワークアドレスとブロードキャストアドレスを通常の端末へ割り当てないためです。

代表的なCIDRを整理すると、次のようになります。

CIDR サブネットマスク アドレス総数 通常利用できるホスト数
/24 255.255.255.0 256 254
/25 255.255.255.128 128 126
/26 255.255.255.192 64 62
/27 255.255.255.224 32 30
/28 255.255.255.240 16 14
/29 255.255.255.248 8 6
/30 255.255.255.252 4 2
/31 255.255.255.254 2 用途によって2
/32 255.255.255.255 1 単一アドレス

従来の説明では、/31は利用可能なホスト数が0とされることがあります。

しかし、ポイントツーポイント接続では、/31の2アドレスを両端へ割り当てる利用方法があります。初心者は、一般的なLANでは/30までを使い、/31には例外的な用途があると理解しておけば十分です。

ネットワークアドレスとブロードキャストアドレス

サブネットを確認するときは、端末へ割り当てられる範囲だけでなく、ネットワークアドレスとブロードキャストアドレスも確認します。

たとえば、192.168.10.0/24の場合は次のようになります。

種類 アドレス
ネットワークアドレス 192.168.10.0
利用可能な先頭アドレス 192.168.10.1
利用可能な末尾アドレス 192.168.10.254
ブロードキャストアドレス 192.168.10.255

ネットワークアドレスは、そのサブネット自体を表します。

ブロードキャストアドレスは、同じブロードキャストドメイン内の全端末へ通信するときに使われます。

通常、この2つをPCやサーバーへ割り当てることはできません。

同じネットワークか判断してみよう

サブネットマスクは、端末が相手を同じネットワークと判断するために使われます。

次の2台を見てみましょう。

PC1: 192.168.10.20/24
PC2: 192.168.10.80/24

どちらもネットワークアドレスは192.168.10.0/24です。

同じネットワークにいるため、PC1はARPでPC2のMACアドレスを調べ、ルーターを経由せずに通信します。

次に、PC2を変更します。

PC1: 192.168.10.20/24
PC2: 192.168.20.80/24

ネットワークアドレスが異なるため、ルーターが必要です。

では、次の例はどうでしょうか。

PC1: 192.168.10.20/25
PC2: 192.168.10.200/25

/25では、192.168.10.0から192.168.10.127と、192.168.10.128から192.168.10.255の2つに分かれます。

PC1は前半、PC2は後半にいるため、IPアドレスの先頭3つが同じでも別ネットワークです。

このように、IPアドレスだけでなくCIDRやサブネットマスクまで確認しなければ、同一ネットワークか判断できません。

サブネットの区切りを計算する方法

/24以外では、最後のオクテットがどこで区切られるのかを計算します。

簡単な方法は、256からサブネットマスクの対象オクテットを引くことです。

/26を計算する例

/26のサブネットマスクは255.255.255.192です。

256 − 192 = 64

64ずつネットワークが区切られます。

ネットワーク 利用可能範囲 ブロードキャスト
192.168.10.0/26 .1.62 .63
192.168.10.64/26 .65.126 .127
192.168.10.128/26 .129.190 .191
192.168.10.192/26 .193.254 .255

たとえば、192.168.10.130/26は、192.168.10.128/26へ所属します。

ネットワークアドレスは.128、ブロードキャストアドレスは.191です。

必要な台数からサブネットを設計する

元記事と同じく、100台の端末を収容するネットワークを考えてみましょう。

/26では62台しか利用できないため不足します。

/25では126台を利用できるため、100台を収容できます。

ネットワーク:          192.168.10.0/25
サブネットマスク:      255.255.255.128
利用可能な範囲:        192.168.10.1〜192.168.10.126
ブロードキャスト:      192.168.10.127

ただし、実際の設計では現在の端末数だけで決めないようにします。

ルーター、サーバー、プリンター、アクセスポイントなどもIPアドレスを使います。将来の増加や予備アドレスも考慮してください。

エンジニア歴10年の経験でも、必要台数にぴったり合わせすぎると、端末追加や機器交換の際に余裕がなくなります。

一方で、必要以上に大きなネットワークにすると、ブロードキャストの範囲や管理対象が広がります。

利用台数、増加見込み、部署や用途による分割を考えて設計しましょう。

Windows・Linuxでサブネットマスクを確認する

Windowsでは、コマンドプロンプトやPowerShellで次のコマンドを実行します。

ipconfig

詳しい情報を確認する場合は、次のように実行します。

ipconfig /all

IPv4アドレス、サブネットマスク、デフォルトゲートウェイなどが表示されます。

Linuxでは、次のコマンドを使います。

ip address

表示例では、IPアドレスの後ろにCIDR表記が付きます。

inet 192.168.10.20/24

経路とネットワーク範囲は、ip routeでも確認できます。

ip route
192.168.10.0/24 dev eth0 proto kernel scope link src 192.168.10.20

この表示から、端末が192.168.10.0/24へ直接接続されていることが分かります。

サブネットマスクの設定ミスで起きる症状

サブネットマスクが誤っていると、一部の相手とだけ通信できないことがあります。

たとえば、同じLAN内の2台でも、一方が/24、もう一方が/25になっていると、相手を同一ネットワークと判断する範囲が異なります。

確認するときは、次の順番がおすすめです。

順番 確認内容
1 自分のIPアドレス
2 サブネットマスク・CIDR
3 相手のIPアドレスとCIDR
4 ネットワークアドレス
5 デフォルトゲートウェイ
6 ARPテーブル
7 ルーティングテーブル
8 VLANやファイアウォール

同じネットワークだと思っていた相手が、実際には別サブネットにいることもあります。

IPアドレスの先頭部分だけを見ず、プレフィックス長まで確認しましょう。

InfraAcademyのネットワーク入門講座で実践する

サブネットマスクは、表を暗記するだけでは身につきにくい分野です。

InfraAcademyのネットワーク入門講座では、IPアドレスとサブネットから始め、ARP、ルーティング、VLAN、NAT、ACLまで順番に学べます。

独自のネットワークシミュレーターを使い、ブラウザ上でPC、スイッチ、ルーターを配置できます。

PCへIPアドレスとサブネットマスクを設定し、pingで通信結果を確認すると、同じIP帯に見えても通信できない理由を理解できます。

次のような演習がおすすめです。

2台のPCを/24で接続
→ /25へ変更
→ 前半・後半のネットワークへ分割
→ ルーターを配置
→ ルーティングを設定
→ pingで結果を比較

最初の講座は無料です。ネットワークを基礎から学びたい方は、学習ロードマップを確認してください。

InfraAcademyのネットワーク学習ロードマップを見る

まとめ

サブネットマスクは、IPv4アドレスのネットワーク部とホスト部を区別するための情報です。

255.255.255.0のような10進数表記と、/24のようなCIDR表記があります。

CIDRの数字が大きくなるほどネットワーク部が増え、一つのサブネットで利用できるホスト数は少なくなります。

一般的なサブネットでは、アドレス総数からネットワークアドレスとブロードキャストアドレスを引いた数を端末へ割り当てられます。ただし、/31など一部には例外があります。

まずは自分のPCでIPアドレスとサブネットマスクを確認しましょう。

その後、/24/25/26でネットワーク範囲がどう変わるのかを計算し、シミュレーターで通信結果を比較すると理解しやすくなります。

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

InfraAcademy運営 / エンジニア

エンジニア歴10年。Linux、ネットワーク、クラウドを中心に、実務で役立つインフラ技術を初心者にもわかりやすく解説しています。

X: @ryu63614894

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る