CCNA受験者の悩みで必ずトップ3に入るのが、サブネット計算の遅さだ。本番の試験(200-301)は120分で100問前後。1問にかける時間の平均は70秒しかない。その中でサブネット計算に3分とか4分かけてたら、他の問題を全部解けなくなる。実際、自分も1回目の受験でそれをやらかした。この記事では、現役ネットワークエンジニアが試験本番でも使えるサブネット計算の暗算テクニックを整理した。

CCNA サブネット計算 192.168.1.0/24を/26×4に分割した構成図
192.168.1.0/24 を /26 × 4 に分割した例。マジックナンバー(ブロックサイズ)= 64、1サブネットあたりのホスト数 = 62台

試験会場でサブネット計算に詰まると、マジで全部崩れる

正直、自分が初めてCCNAを受けたとき(もう4年以上前になる)、サブネット計算で1問あたり平均3分以上かかってた。当然、後半は時間が足りなくて適当にマークした問題がいくつもあった。結果は不合格。点数は825点で合格ラインの800点をわずかに下回るという、笑えない結果。

で、2回目の受験前に何を変えたかというと、ほぼサブネット計算の練習だけ。毎朝10問、2週間続けたら1問30秒以内で解けるようになった。それで合格した。

計算が速くなると何がいいかというと、問題を読む余裕が生まれるんだ。焦りがなくなると凡ミスも減る。シンプルだけど効果は大きい。

まず絶対に覚えるべき「2の累乗」と「マジックナンバー」

サブネット計算の基礎中の基礎。2の累乗を瞬時に出せないと何も始まらない。

指数用途
2/31(P2P回線)
4/30(ブロックサイズ)
8/29
2⁴16/28
2⁵32/27
2⁶64/26
2⁷128/25
2⁸256/24

「1・2・4・8・16・32・64・128・256」を声に出して言えるようにする。逆から言えるならもっといい。これはCiscoの公式ドキュメントでもサブネット計算の基本として紹介されている考え方だ。

次にマジックナンバー。計算式は単純で、「256 ― サブネットマスクの最後のオクテット」。

たとえば /26 のサブネットマスクは 255.255.255.192。だから 256 − 192 = 64 がマジックナンバー(ブロックサイズ)。このブロックサイズが、サブネットが繰り返される間隔になる。

/24〜/30のサブネット情報は丸暗記してしまう

ここは時間対効果が高い。CCNA試験に出るサブネット範囲はほぼ /24〜/30 に集中している。まとめると以下の通り。

プレフィックスサブネットマスクブロックサイズ使えるホスト数
/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

「ホスト数 = ブロックサイズ − 2」と覚えておけば、ブロックサイズさえわかれば即計算できる。−2の理由はネットワークアドレスとブロードキャストアドレスの分。

ちなみに /16 や /18 が出てきたときは、第3オクテットを使うだけで基本的な計算方法は同じ。/18 なら 255.255.192.0 で、第3オクテットのブロックサイズは 256 − 192 = 64。ただし第3オクテットが変化するため「どのオクテットを計算するか」を間違えないよう注意する。ここは自分も最初かなり混乱した。

問題を解く手順|マジックナンバー法で30秒以内に出す

実際の手順を問題例で見てみる。

問題:192.168.1.200/26 のネットワークアドレスとブロードキャストアドレスを求めよ

ステップ①:ブロックサイズを確認

/26 → 256 − 192 = 64

ステップ②:第4オクテット(200)をブロックサイズ(64)で割る

200 ÷ 64 = 3 余り 8。商の整数部分 = 3

ステップ③:ネットワークアドレスを出す

3 × 64 = 192 → ネットワークアドレスは 192.168.1.192

ステップ④:ブロードキャストアドレスを出す

次のサブネット開始アドレス(192 + 64 = 256)から 1 を引く → 192.168.1.255

以前、客先でのネットワーク設計レビュー中に、担当者から「このIPアドレス(192.168.1.200)を管理用に使っていいですか?」と聞かれたことがある。そのとき頭の中で即座にこの計算をして「192.168.1.0/26 で設計されているなら 192.168.1.200 は 192.168.1.192/26 のサブネット内なので使えますよ、ただブロードキャストアドレスには当たらないので大丈夫です」と答えた。慣れると本当に数秒で出てくる。

ワイルドカードマスクは引き算1発で終わる

ACLの問題でよく出るワイルドカードマスクも、計算は単純。

ルール:ワイルドカードマスク = 255.255.255.255 − サブネットマスク

/26(255.255.255.192)のワイルドカードマスクを求めるなら:

255.255.255.255
-  255.255.255.192
= 0.0.0.63

各オクテットを個別に引くだけ。難しくはない。

ただ、正直なところ /17 や /19 みたいな第3オクテットにかかるプレフィックスは少し慣れが必要。例として /18(255.255.192.0):

255.255.255.255
-  255.255.192.0
= 0.0.63.255

ゼロにならないオクテットが増えると混乱しやすいが、「255 − n」を各オクテットで順番に計算する習慣をつければ解決する。

練習問題3問|実際に解いてみよう

手を動かさないと定着しない。以下の3問を解いてみてほしい。

問題1:172.16.50.100/20 のネットワークアドレスは?

問題2:10.0.0.1〜10.0.0.30 の全ホストをカバーする最小サブネットのプレフィックス長は?

問題3:/22 の1サブネットで使えるホスト数は?

解答と解説

問題1の解答:172.16.48.0/20
/20 のサブネットマスクは 255.255.240.0。第3オクテットのブロックサイズ = 256 − 240 = 16。50 ÷ 16 = 3余り2。3 × 16 = 48。→ ネットワークアドレスは 172.16.48.0

問題2の解答:/27
32台(1〜30の30台 + ネットワーク・ブロードキャスト2つ = 32)をカバーするには 2⁵ = 32 が必要 → /27(ブロックサイズ32)

問題3の解答:1022台
/22 のブロックサイズ = 256 × 4 = 1024(第3オクテットにまたがるため)。使えるホスト数 = 1024 − 2 = 1022。この計算、最初全然わからなくてCisco Learning Networkのフォーラムで調べまくった記憶がある。

サブネット計算に関するよくある質問(FAQ)

Q. サブネットマスクの/28はIPアドレスが何個使える?

/28はホスト部が4ビットなので、2^4 – 2 = 14個のIPアドレスが使える。ブロックサイズは16なので、ネットワークアドレスとブロードキャストアドレスを除いた14個が実際にホストに割り当て可能な数だ。

Q. サブネット計算で一番早い方法は?

マジックナンバー法(ブロックサイズ法)が最速。256からサブネットマスクの第4オクテットを引くだけでブロックサイズが出る。あとはそのブロックサイズの倍数でネットワークアドレスを特定し、次のブロック境界 – 1がブロードキャストアドレスになる。慣れれば30秒以内で解ける。

Q. CCNA試験でサブネット計算は何問くらい出る?

CCNA 200-301では直接的なサブネット計算の問題は数問程度だが、IPアドレス設計やトラブルシューティングの問題でもサブネットの理解が必要になる。結果的に試験全体の20〜30%はサブネットの知識が関わってくるので、暗算テクニックは必須。

Q. /31と/32のサブネットは実務でどう使う?

/31はPoint-to-Pointリンク(ルータ間接続)で使われる。RFC 3021で規定されていて、2つのIPアドレスだけで済むので/30よりIPアドレスの節約になる。/32はループバックアドレスやホストルートで使われる。CCNA試験ではあまり出ないが、実務では頻繁に見かける。

まとめ|計算で迷わなくなると試験全体に余裕が生まれる

  • マジックナンバー(256 − サブネットマスク最終オクテット)= ブロックサイズ
  • /24〜/30 のサブネット情報は丸暗記で時短
  • ネットワークアドレス = 商(整数) × ブロックサイズ
  • ワイルドカードマスク = 255.255.255.255 − サブネットマスク
  • 毎日10問、2週間続けると体に染み込む

サブネット計算はセンスじゃなくて練習量。速くなれば試験本番で他の問題に集中できるようになる。難しい設問を解く余力が生まれるのが一番大きい。

CCNA試験の全体像や受験料についてはこちらの記事にまとめているので、あわせて読んでほしい。