サブネットマスクの計算方法|範囲とホスト数の求め方

サブネットマスクの計算方法

サブネットマスクの計算は、「256−マスクの数字」で区切りの幅を出せば、2進数に直さずに解けます。192.168.10.75/26なら幅は64で、ネットワークは192.168.10.64、ブロードキャストは.127、使えるホストは62台です。

この記事でわかること

  • ネットワークアドレス・ブロードキャストアドレス・使える範囲を出す手順
  • 2進数を使わない「256から引く」近道と、/24〜/32の計算表
  • 必要な台数からマスクを決める逆算
  • 2台が同じネットワークかの判定と、/22のような区切りの計算
  • /31・/32の扱いと、実機で答え合わせするコマンド

一次情報: RFC 950「Internet Standard Subnetting Procedure」(参照)/RFC 3021「Using 31-Bit Prefixes on IPv4 Point-to-Point Links」(参照)/RFC 4632「Classless Inter-domain Routing (CIDR)」(参照)※2026年10月時点

サブネットの計算は、基本情報技術者試験でも毎回のように出る範囲です。試験の合格率や科目A・科目Bの勉強法は、別の記事にまとめました。

目次

サブネットマスクの計算で求めるもの

サブネットマスクの計算とは、IPアドレスのどこまでがネットワークの番号で、どこからが機器の番号かを割り出す作業です。IPv4のアドレスは32ビットで、マスクの1が並ぶ部分がネットワーク、0の部分がホスト(機器)を表します。

計算で出すのは、次の値です。

  • ネットワークアドレス:そのネットワークの名前にあたる、先頭のアドレス
  • ブロードキャストアドレス:全員あての、最後のアドレス
  • 使える範囲:先頭と最後を除いた、機器に付けられるアドレス
  • ホスト数:使える範囲に入るアドレスの数

/26のような書き方は「先頭から26ビットがネットワーク」という意味です。255.255.255.192と書いても中身は同じになります。

「256から引く」だけで範囲を出す手順

一番速いのは、区切りの幅(ブロックサイズ)を使う方法です。マスクの中で255でも0でもない数字を、256から引く。出た数が、ネットワークの区切りの幅になります。

  1. マスクの中で255でも0でもない数字を見つける(/26なら第4オクテットの192)
  2. 256からその数字を引く(256−192=64)。これが区切りの幅
  3. 0から幅ずつ数え、IPアドレスが入る区間を探す(0・64・128・192 のうち、75は64〜127)
  4. 区間の先頭がネットワーク、最後がブロードキャスト、間が使える範囲

192.168.10.75/26 の計算結果
項目値
サブネットマスク255.255.255.192
区切りの幅64(256−192)
ネットワークアドレス192.168.10.64
ブロードキャストアドレス192.168.10.127
使える範囲192.168.10.65 〜 192.168.10.126
ホスト数62台(64−2)

2進数で確かめるとこうなる

近道の答えは、2進数のAND(両方が1のところだけ1を残す計算)と一致します。75とマスクの192を並べると、次のとおりです。

75   = 0100 1011
192  = 1100 0000
AND  = 0100 0000  → 64(ネットワークアドレスの第4オクテット)

ホスト部の6ビットを全部1にすると0111 1111で127、つまりブロードキャストです。試験では近道で解き、迷ったときだけ2進数で確かめると時間を取られません。

サブネットマスクの計算表(/24〜/32)

よく出るのは/24から/30です。マスクの数字は128・192・224・240・248・252・254・255と、上から1ビットずつ足した値に並びます。

プレフィックス長ごとのマスク・幅・ホスト数(第4オクテットで区切る場合)
プレフィックス長サブネットマスク区切りの幅ホスト数
/24255.255.255.0256254
/25255.255.255.128128126
/26255.255.255.1926462
/27255.255.255.2243230
/28255.255.255.2401614
/29255.255.255.24886
/30255.255.255.25242
/31255.255.255.25422(2点間をつなぐ線だけ)
/32255.255.255.25511(機器1台そのもの)

ホスト数は「2のホスト部のビット数乗−2」で出ます。−2は、ネットワークアドレスとブロードキャストアドレスの2つを除く分です。

/31と/32は特別な使い方をする

/31は、RFC 3021で決められた使い方です。ルーター同士を1本の線でつなぐときに限り、2つのアドレスをどちらも機器に付けます。/30だと4つのうち2つが余るため、アドレスを半分に節約できます。

/32は、機器1台だけを指すときの書き方です。ルーターのループバックや、特定の1台だけを許可するアクセスリストで見かけます。

必要な台数からマスクを決める逆算

設計の場面では、逆に「何台つなぐから、どのマスクにするか」を決めます。台数+2以上になる2の累乗を探すのが手順です。

必要な台数と選ぶマスク
つなぎたい台数必要なアドレス数選ぶプレフィックス長ホスト数
25台27以上 → 32/2730
50台52以上 → 64/2662
120台122以上 → 128/25126
200台202以上 → 256/24254
500台502以上 → 512/23510

台数には、PCのほかにゲートウェイのルーター、プリンター、無線のアクセスポイントも入ります。現場では増設の分も見込み、ぎりぎりのマスクは選ばないのがふつうです。

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

「pingが通らない」原因が、マスクの設定違いということはよくあります。2台のアドレスが同じ区間に入るかを計算すれば、ルーターを通らずに直接話せるかがわかります。

192.168.1.100 と 192.168.1.130 は同じネットワークか

/24(255.255.255.0)のとき
区切りの幅
256。0〜255が1つの区間
2台の区間
どちらも 0〜255 に入る
判定
同じネットワーク。直接通信できる
/25(255.255.255.128)のとき
区切りの幅
128。0〜127 と 128〜255 に分かれる
2台の区間
.100 は 0〜127、.130 は 128〜255
判定
別のネットワーク。ルーターが要る

図:同じアドレスでも、マスクが1ビット違うだけで別のネットワークになる

片方のPCだけマスクを/25にしていると、そのPCから見て相手は「別のネットワーク」になります。直接は送らず、ゲートウェイへ送ろうとするため、つながり方が片側だけおかしくなります。2台のマスクが揃っているかを、最初に確かめてください。

第3オクテットで区切れる場合(/17〜/23)

/23や/22のように、マスクの中で255でも0でもない数字が第3オクテットに来ることがあります。手順は同じで、幅を第3オクテットで数えるだけです。

172.16.13.200/22 の計算結果
項目値
サブネットマスク255.255.252.0
区切りの幅第3オクテットで4(256−252)
ネットワークアドレス172.16.12.0(13は12〜15の区間)
ブロードキャストアドレス172.16.15.255
使える範囲172.16.12.1 〜 172.16.15.254
ホスト数1,022台(2の10乗−2)

第3オクテットで区切れたときは、第4オクテットは先頭が0、最後が255になります。ここで第4オクテットまで幅で割ろうとして、取り違えるミスが多い部分です。

ワイルドカードマスクは「255から引く」

OSPFやアクセスリストの設定では、マスクを反対向きにしたワイルドカードマスクを使います。出し方は、各オクテットを255から引くだけ。

サブネットマスクワイルドカードマスク
255.255.255.00.0.0.255
255.255.255.1920.0.0.63
255.255.252.00.0.3.255

計算の答え合わせをする実機のコマンド

計算した結果は、実機の表示で確かめられます。OSによってマスクの見せ方が違うので、そこだけ注意してください。

マスクを確かめるコマンドと表示の形
環境コマンドマスクの表示
Windowsipconfig255.255.255.192 の形
Linuxip -4 addr192.168.10.75/26 の形
Cisco IOSshow ip interfaceInternet address is 192.168.10.75/26
Linuxipcalc 192.168.10.75/26ネットワーク・ブロードキャスト・範囲を一覧で表示

ipcalcは、計算をそのまま代わりにやってくれる道具です。ディストリビューションによって入っている版が違い、表示の項目名も変わります。

よくある質問

サブネットマスクの計算を2進数なしで解く方法は?

マスクの中で255でも0でもない数字を256から引き、出た幅で0から区切ります。IPアドレスが入る区間の先頭がネットワーク、最後がブロードキャストです。/24〜/30の幅(256・128・64・32・16・8・4)を覚えておくと、さらに速く解けます。

ホスト数の計算で2を引くのはなぜですか?

先頭のネットワークアドレスと、最後のブロードキャストアドレスは機器に付けられないためです。/26ならアドレスは64個あり、そこから2つ除いた62台が使えます。例外は/31で、2点間の線に限っては2つとも機器に付ける決まりです。

サブネット数を数えるときも2を引きますか?

古い教材には、サブネット数も「2の累乗−2」で数えるものがあります。これはRFC 950の頃に、全部0と全部1のサブネットを使わない決まりがあった名残です。今の機器はふつう全部のサブネットを使えるので、問題文の前提を先に確かめてください。

/24と255.255.255.0は同じ意味ですか?

同じ意味です。/24は「先頭から24ビットがネットワーク」という書き方で、24個の1を8ビットずつ区切ると255.255.255.0になります。Windowsは255の形、Linuxや経路表は/の形で表示することが多いです。

192.168.1.0/24の中で、サブネットを4つに分けるには?

4つに分けるには2ビット足して/26にします。幅は64になり、192.168.1.0・.64・.128・.192の4つです。それぞれ62台ずつ使えます。

まとめ

  • マスクの中で255でも0でもない数字を256から引くと、区切りの幅が出る
  • IPアドレスが入る区間の先頭がネットワーク、最後がブロードキャスト。ホスト数は幅−2
  • 必要な台数からは、台数+2以上になる2の累乗を探してマスクを決める
  • /22などは第3オクテットで幅を数える。第4オクテットは0〜255になる
  • /31は2点間の線だけ、/32は機器1台だけを指す特別な使い方

計算に慣れたら、実際の経路表で/の数字を読んでみてください。どの経路が選ばれるかは「一番細かく一致する行」で決まり、ここでもマスクの計算がそのまま使えます。

サブネットの計算は、未経験からネットワークエンジニアを目指すときに最初につまずきやすいところです。資格の取り方から内定までの道筋を、5つの段階に分けて整理しました。

未経験からネットワークエンジニアになる道筋を見る


免責事項

※本記事はRFCなどの公開情報をもとに整理したものです。コマンドの表示や挙動は、OSや機器のバージョン・環境によって変わる場合があります。試験の出題形式は、各試験の実施団体の最新資料をあわせてご確認ください。


よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Tanabeです。新卒でSIerに入り、ネットワークの設計から構築、運用保守、クラウド移行まで10年やってきました。その間に転職を3回、CCNPも取りました。

正直に言うと、資格を取っても年収はすぐには上がりませんでした。1回目の転職は失敗、2回目でようやく150万円上がり、3回目で今の事業会社に落ち着いた。動いてみて分かったのは、資格の有無より「現場で何を任されてきたか」で評価が決まる、ということです。

エージェントの言葉を鵜呑みにして、危うく後悔しかけた経験もあります。だからこそ、自分がやらかした失敗をそのまま書いて、同じ回り道をしなくて済むように残しています。転職を考え始めた人が、条件で損をしないための材料にしてもらえたら嬉しいです。

目次