応用情報技術者 2018年 春期 午前2 問35
問題文
二つのIPv4ネットワーク 192.168.0.0/23 と192.168.2.0/23 を集約したネットワークはどれか。
選択肢
ア:192.168.0.0/22(正解)
イ:192.168.1.0/22
ウ:192.168.1.0/23
エ:192.168.3.0/23
🔒 解説は解答すると表示されます
ネットワーク集約【午前2解説】
正解の理由
192.168.0.0/23(範囲 192.168.0.0–192.168.1.255)と192.168.2.0/23(範囲 192.168.2.0–192.168.3.255)は連続した /23 ブロックで、これらを合わせるとアドレス数が になり、これは /22 に相当します。したがって集約後のネットワークは ア の 192.168.0.0/22(範囲 192.168.0.0–192.168.3.255)になります。/22 のネットワーク境界は第3オクテットが4の倍数(0,4,8,…)なので、192.168.0.0 が正しい開始アドレスです。
解法ステップ
- 各ブロックの範囲を求める
- /23 はホスト部ビット数 、アドレス数 。
- 192.168.0.0/23 → 192.168.0.0–192.168.1.255
- 192.168.2.0/23 → 192.168.2.0–192.168.3.255
- 連続しているか確認する
- 上記2ブロックはアドレス空間で隣接している(.0–.1.255 の次が .2.0)。
- 結合後のサイズとプレフィックスを決定する
- 512×2 = 1024 → ホスト部ビット数 → プレフィックス長 (/22)。
- 正規化された開始アドレスを求める
- /22 の増分は第3オクテットで 4(255.255.252.0)。開始は 192.168.0.0(4の倍数)であるため 192.168.0.0/22。
※ ビット演算で確認する場合は、ネットワークアドレス = IP AND サブネットマスクを使います。例えば 192.168.1.0 を /22 マスク 255.255.252.0 と AND すると 192.168.0.0 になります(非正規化表記は正規化すると開始アドレスに変わる)。
選択肢別の誤答解説
-
ア(192.168.0.0/22)
- 正答。192.168.0.0/23 と 192.168.2.0/23 をまとめた正規化された /22 ネットワーク。
-
イ(192.168.1.0/22)
- 表記自体は書けるが、/22 の標準的なネットワーク開始アドレス(正規化)は第3オクテットが4の倍数である必要があるため、192.168.1.0/22 は非正規(ホストビットが立っている表記)であり、正規化すると 192.168.0.0/22 に相当します。したがって表記として誤り(不適切)。範囲は 192.168.0.0–192.168.3.255。
-
ウ(192.168.1.0/23)
- /23 は第3オクテットが2の倍数(増分2)で開始すべきため、192.168.1.0/23 は非正規の表記です。正規化すると 192.168.0.0/23(範囲 192.168.0.0–192.168.1.255)になり、元の2つのブロックのうち前半に相当するのみで集約にはならない。
-
エ(192.168.3.0/23)
- /23 の正規化ルールに則ると、192.168.3.0/23 は正規化すると 192.168.2.0/23(範囲 192.168.2.0–192.168.3.255)になります。これは後半のブロックに相当するが、単独では集約結果(/22)ではない。
よくある誤解
- 「任意の開始アドレスで /n を書けるからそのまま範囲が分かる」
- 非正規化表記(例: 192.168.1.0/22 や 192.168.1.0/23)はしばしば見かけますが、実際のネットワーク範囲を得るには正規化(ネットワークアドレスに直す)する必要があります。
- 「/23 を二つ合わせると /24 になる」
- 間違い。/23 は /24 より大きい(アドレス数が多い)ため、二つの /23 をまとめると更に小さいプレフィックス長(数が少ないスラッシュ、例:/22)になります。プレフィックス長の増減は逆方向で考えます。
補足コラム
- 正規化とは:表記された IP アドレスとプレフィックスの組み合わせからネットワークアドレス(ホストビットをすべて 0 にした値)を算出すること。多くの教科書・ツールはネットワークは常に正規化された開始アドレスで表します(例:192.168.1.0/22 → ネットワークは 192.168.0.0/22 とする)。
- 境界の確認方法(簡便)
- /22 の増分 = 4(第3オクテット)
- /23 の増分 = 2(第3オクテット)
- 一般に /m の増分は第3オクテットや第4オクテットでのビット位置に依存しますが、増分が整数であるかを確認して開始アドレスを選びます。
FAQ
Q1: 192.168.1.0/22 と 192.168.0.0/22 は同じですか?
A1: ネットワークとしては同じ範囲(192.168.0.0–192.168.3.255)を表しますが、前者は非正規化表記です。正式には 192.168.0.0/22 と書きます。
A1: ネットワークとしては同じ範囲(192.168.0.0–192.168.3.255)を表しますが、前者は非正規化表記です。正式には 192.168.0.0/22 と書きます。
Q2: どうやって素早く集約できるか?
A2: ブロックが連続しているか(次のブロックの開始が前のブロックの直後か)を確認し、合算したアドレス数が 2^k(k が整数)かを見ます。合算後のアドレス数が ならプレフィックスは 。また開始アドレスが新しいプレフィックスの境界に合うか確認します。
A2: ブロックが連続しているか(次のブロックの開始が前のブロックの直後か)を確認し、合算したアドレス数が 2^k(k が整数)かを見ます。合算後のアドレス数が ならプレフィックスは 。また開始アドレスが新しいプレフィックスの境界に合うか確認します。
Q3: ツールで非正規化表記を見たらどう扱う?
A3: ネットワーク機器やルーティングテーブルでは多くの場合内部で正規化されます。読む際は AND 演算で正規化してから範囲を確認してください。
A3: ネットワーク機器やルーティングテーブルでは多くの場合内部で正規化されます。読む際は AND 演算で正規化してから範囲を確認してください。
関連キーワード: CIDR、サブネットマスク、正規化、ネットワーク境界、プレフィックス計算

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

