2026年5月12日
IPアドレスとサブネットマスクの計算
情報Ⅰのネットワーク分野で、IPアドレスとサブネットマスクの計算問題が出ます。二進法のAND演算を使って「ネットワークアドレス」を求める問題が頻出です。
情報Ⅰの二進法の計算の知識が前提になります。二進法に不安がある人は先にそちらを復習しましょう。
IPアドレスの基本
IPアドレスとは:インターネット上の「住所」。IPv4は32ビット(8ビット×4組)で表されます。例: 192.168.1.100
構成:IPアドレスは「ネットワーク部」と「ホスト部」に分かれます。ネットワーク部=町名、ホスト部=番地のようなイメージです。
サブネットマスクとは
サブネットマスクは「IPアドレスのどこまでがネットワーク部か」を示すものです。
例: サブネットマスク 255.255.255.0 → 上位24ビットがネットワーク部、下位8ビットがホスト部
二進法で見ると:255.255.255.0 = 11111111.11111111.11111111.00000000。1の部分がネットワーク部、0の部分がホスト部です。
ネットワークアドレスの求め方
- IPアドレスを二進法に変換する
- サブネットマスクを二進法に変換する
- 各ビットでAND演算する(両方1のときだけ1)
- 結果を十進法に戻す → これがネットワークアドレス
簡単な例から見てみましょう。IP: 192.168.1.100、マスク: 255.255.255.0 の場合、マスクの最後の8ビットが全部0なので、IPアドレスの最後の8ビットもそのまま0になります。→ ネットワークアドレス: 192.168.1.0
ビットを1つずつAND演算する筆算例
次は、マスクの1と0が同じ8ビットの中で混ざっているパターンです。IP: 192.168.1.100、マスク: 255.255.255.192(下位8ビットのマスクが192)の場合を、ビットを並べて筆算してみましょう。
まず最後の8ビット(100と192)をそれぞれ二進法に直します。100 = 64+32+4 なので「01100100」、192 = 128+64 なので「11000000」です。
IP :0 1 1 0 0 1 0 0 (100)
AND マスク:1 1 0 0 0 0 0 0 (192)
―――――――――――――――――
結果 :0 1 0 0 0 0 0 0 (64)
1ビットずつ「両方1のときだけ1」を確認すると、左から2番目のビットだけが「IP=1・マスク=1」で1になり、他はすべて0になります。結果は「01000000」=64です。よって最後の8ビットは64となり、ネットワークアドレスは 192.168.1.64 です。
ブロードキャストアドレスの求め方
「ブロードキャストアドレス」は、そのネットワーク内の全員に一斉送信するための特別なアドレスで、ホスト部のビットをすべて1にすると求まります。
先ほどの例(ネットワークアドレス 192.168.1.64、マスク 255.255.255.192)で計算してみます。マスクの下位2ビットがホスト部なので、そこを全部1にします。
ネットワーク部:0 1 0 0 0 0 0 0 (64)
ホスト部を全て1:0 1 0 0 0 0 0 0 + 0 0 1 1 1 1 1 1
―――――――――――――――――
結果 :0 1 1 1 1 1 1 1 (127)
よってブロードキャストアドレスは 192.168.1.127 です。ネットワークアドレス(64)からブロードキャストアドレス(127)までの64個のアドレスのうち、両端の2つ(ネットワークアドレスとブロードキャストアドレス)を除いた62個が実際に機器に割り当てられるホストアドレスになります。
ホスト数の求め方
ホスト部のビット数がわかれば、そのネットワークに接続できる機器の最大数(ホスト数)を計算できます。
ホスト数 = 2^(ホスト部のビット数) - 2
「-2」しているのは、ホスト部が全部0の「ネットワークアドレス」と、全部1の「ブロードキャストアドレス」は機器に割り当てられないためです。先ほどの例ではホスト部が6ビットなので、2⁶-2=62台となります。
練習問題と解答
ここまでの計算方法を使って、実際に手を動かして解いてみましょう。答え合わせをする前に、必ず自分で二進法に直してAND演算をしてみてください。
問題1:ネットワークアドレスを求める(バイト境界)
IPアドレス 172.16.5.200、サブネットマスク 255.255.0.0 のネットワークアドレスは?
解答:172.16.0.0(マスクが8ビットの区切りにぴったり合っているので、上位16ビット=ネットワーク部がそのまま残り、下位16ビットが0になります)
問題2:ホスト数を求める(/24)
サブネットマスク 255.255.255.0 のネットワークに接続できるホスト数は?
解答:254台(ホスト部は8ビットなので 2⁸ - 2 = 254)
問題3:ネットワークアドレスを求める(ビットが混在)
IPアドレス 10.20.30.50、サブネットマスク 255.255.255.128 のネットワークアドレスは? 最後の8ビットをAND演算して求めましょう。
IP :0 0 1 1 0 0 1 0 (50)
AND マスク:1 0 0 0 0 0 0 0 (128)
―――――――――――――――――
結果 :0 0 0 0 0 0 0 0 (0)
解答:10.20.30.0(先頭ビット同士だけが「両方1」になる可能性がありますが、IP側の先頭ビットが0なので結果は全ビット0になります)
問題4:ブロードキャストアドレスを求める
問題3と同じネットワーク(10.20.30.0、マスク 255.255.255.128)のブロードキャストアドレスは?
解答:10.20.30.127(ホスト部は7ビットなので、全部1にすると 0000000+1111111=1111111=127)
問題5:ホスト数を求める(/28)
サブネットマスク 255.255.255.240 のネットワークに接続できるホスト数は?
解答:14台(240 = 11110000 なのでホスト部は4ビット。2⁴ - 2 = 14)
問題6:同じネットワークかどうかを判定する
IPアドレス 192.168.10.66 と 192.168.10.130 は、サブネットマスク 255.255.255.192(/26)のとき、同じネットワークに属しているでしょうか? それぞれのネットワークアドレスを求めて比べてみましょう。
66 : 0 1 0 0 0 0 1 0 AND 1 1 0 0 0 0 0 0 = 0 1 0 0 0 0 0 0 (64)
130: 1 0 0 0 0 0 1 0 AND 1 1 0 0 0 0 0 0 = 1 0 0 0 0 0 0 0 (128)
解答:同じネットワークではありません。192.168.10.66 のネットワークアドレスは 192.168.10.64、192.168.10.130 のネットワークアドレスは 192.168.10.128 となり、値が異なるためです。
情報Ⅰ試験対策まとめで他の分野も確認。論理回路でAND演算の基本を復習。セキュリティ・暗号化でネットワークセキュリティも学びましょう。共通テスト対策スケジュールで学習計画を。
まとめ
- ✅ IPアドレス=ネットワーク部 + ホスト部
- ✅ サブネットマスク=どこまでがネットワーク部かを示す
- ✅ ネットワークアドレス=IPとマスクのAND演算(ビットごとに両方1のときだけ1)
- ✅ ブロードキャストアドレス=ホスト部を全部1にしたアドレス
- ✅ ホスト数=2^(ホスト部のビット数) - 2
- ✅ 迷ったら8ビットずつ書き出して、1ビットずつAND演算を確認する