FE EXAM

ネットワークアドレス(network address)

ホスト部がすべて0で、そのネットワーク自体を表すアドレス。

INTERACTIVE VISUALIZATION
ネットワーク部
ホスト部(0)
IPアドレス
192.168.1.10/24
サブネットマスク
ネットワークアドレス
シナリオ
ステップ1 / 6
STEP 1/6ネットワークアドレスとは何かを確認ネットワークアドレスは、IPアドレスのうち「どのネットワークか」を表す部分で、ホスト部がすべて0になったアドレスです。これからIPアドレスとサブネットマスクから求める手順を見ていきます。
▶ を押すと計算が始まります
解説

📌
ネットワークアドレスとは

ネットワーク部00000000ホスト部=全0例 192.168.1.0

ネットワークアドレスとは、IPアドレスのうちホスト部(=そのネットワーク内のどの機器かを表す部分)がすべて0になったアドレスで、そのネットワーク自体を表すものです。個々の機器ではなく「このネットワークのまとまり」を指す代表番号だと考えてください。

身近な例で考えると、マンションの建物そのものを表す住所に似ています。「○○マンション(建物全体)」がネットワークアドレス、「○○マンション 101号室」が個々の機器のアドレス、というイメージです。建物名だけでは特定の部屋を指せないので、ネットワークアドレスは機器には割り当てません。

上のツールで▶ボタンを押すと、IPアドレスとサブネットマスクを2進数にしてAND演算し、ホスト部が0になってネットワークアドレスが求まる流れを確認できます。

📐
求め方

ネットワークアドレスは、IPアドレスとサブネットマスクのAND演算で求めます。

ネットワークアドレス = IP AND サブネットマスク

AND演算は「両方が1のときだけ1、それ以外は0」というビット演算です。これを2進数の各けたに当てはめると、
マスクが1の所:IPのビットがそのまま残る(ネットワーク部)
マスクが0の所:必ず0になる(ホスト部が0になる)

計算の手順は次の3つです。
① 2進数に変換:IPとサブネットマスクをそれぞれ2進数にする
② けたごとにAND:同じ位置のビットどうしをAND演算する
③ 10進に戻す:結果をドット10進表記に戻すとネットワークアドレス

マスクが /24(255.255.255.0)のように1の並びがちょうどオクテット区切りなら、暗算もできます。マスクが255の所はIPをそのまま、0の所は0にすればよいだけです。例:192.168.1.10 AND 255.255.255.0 = 192.168.1.0

🧮
計算例

マスクの区切りがオクテットの途中に来る場合(例 /26)は、暗算が難しくなるのでそのオクテットだけ2進数にして計算します。/26 のとき最後のオクテットのマスクは11000000 = 192です。

例: 192.168.1.130 /26第4オクテット 130 = 10000010マスク 192 = 11000000AND の結果 = 10000000 = 128→ NW = 192.168.1.128

覚えておくと速い計算ポイントは次のとおりです。
ホスト部のビット数 = 32 − プレフィックス長(/26 なら 32−26=6ビット)
1ネットワークのアドレス数 = 2 の (ホストビット数) 乗(6ビットなら 2⁶=64個)
割り当て可能なホスト数 = アドレス数 − 2(ネットワークとブロードキャストを除く)

/26 ならアドレスは64個刻みで区切られるので、ネットワークアドレスは.0 / .64 / .128 / .192のいずれかになります。130 はこのうち .128 の区画に入るので、ネットワークアドレスは 192.168.1.128 だと一瞬で分かります。

📌
サブネットマスクがANDを使う理由

ANDの性質をマスクに利用するマスク=1 の桁IP のビットがそのまま1 AND 1 = 1 / 0 AND 1 = 0マスク=0 の桁必ず 0 になる1 AND 0 = 0 / 0 AND 0 = 0→ ホスト部を強制的に 0 にする操作

AND演算には「片方が0なら結果は必ず0」という性質があります。サブネットマスク(=ネットワークの範囲を決める数値)は、ネットワーク部の桁をすべて1、ホスト部の桁をすべて0にした特別なビット列です。

この性質を組み合わせると次のことが起きます。
マスクが1の桁:IPの1か0がそのまま結果に残る(ネットワーク部を保持)
マスクが0の桁:IPの値がどんな数でも結果は必ず0(ホスト部を強制ゼロに)

つまりANDを使う理由は、ホスト部だけを選択的にゼロにできるから。ネットワーク部はそのまま残し、ホスト部だけを0にした結果が「ネットワークアドレス」になるわけです。ほかの演算(ORやXOR)ではこの「ゼロにする」効果が出ないため、ANDが選ばれています。

📌
プレフィックス長(/24など)の意味

32ビットのどこで区切るかを示すネットワーク部 24bitホスト部 8bit↑ これが /24(24ビットがネットワーク部)ホスト数 = 2^8 - 2 = 254台(NW・BCA除く)

192.168.1.10/24 の末尾の /24 はプレフィックス長(CIDR表記)と呼びます。これは「32ビットのうち先頭24ビットがネットワーク部」を意味します。

プレフィックス長が変わるとネットワークの広さが変わります。
/24(マスク 255.255.255.0):ホスト部8bit → 最大 2⁸−2=254
/16(マスク 255.255.0.0):ホスト部16bit → 最大 2¹⁶−2=65534
/26(マスク 255.255.255.192):ホスト部6bit → 最大 2⁶−2=62

「マスク数字 2 個を引く」理由は、そのネットワークのうち先頭(ネットワークアドレス)と末尾(ブロードキャストアドレス)の2つが機器には割り当てられないためです。街区(ネットワーク)の区画全体がある区画数でも、入口看板と出口看板の2枚は家の番地として使えないのと同じイメージです。

📌
ネットワークアドレスを使う場面

端末Aルータ経路表でNWを照合外部NWルータは宛先のNWアドレスで経路を決める(経路表=ルーティングテーブル)

ネットワークアドレスは、機器を個別に指すためでなく、「ネットワークのまとまり」を識別する目印として使われます。主な用途は次の2つです。
ルータの経路制御(ルーティング):ルータ(=ネットワーク間のデータを転送する装置)は「宛先のIPがどのネットワーク宛か」を判断して経路を選びます。この判断に使う経路表(ルーティングテーブル)には、ネットワークアドレスが登録されています。
同一ネットワーク判定:2台の機器が同じネットワークにいるかどうかは、それぞれのIPアドレスとマスクをANDして求めたネットワークアドレスが一致するかで分かります。

たとえば 192.168.1.10/24192.168.1.30/24 はどちらもネットワークアドレスが 192.168.1.0 なので同じネットワーク内と判断できます。192.168.2.10/24 はネットワークアドレスが 192.168.2.0 になるため別のネットワークです。この判定をルータが自動的に行い、データを適切な経路へ送り出しています。

練習問題

🎯
基本情報技術者 練習問題

Q1.ネットワークアドレスの説明として最も適切なものはどれか。
A.ホスト部がすべて0で、そのネットワーク自体を表すアドレス
B.ホスト部がすべて1で、全機器宛てを表すアドレス
C.機器に個別に割り当てる番号
D.インターネット全体を表すアドレス
Q2.IPアドレス 192.168.1.10、サブネットマスク 255.255.255.0 のネットワークアドレスはどれか。
A.192.168.1.0
B.192.168.1.10
C.192.168.1.255
D.255.255.255.0
Q3.ネットワークアドレスの求め方として正しいものはどれか。
A.IPアドレスとサブネットマスクをOR演算する
B.IPアドレスとサブネットマスクをAND演算する
C.IPアドレスからサブネットマスクを引く
D.IPアドレスのホスト部をすべて1にする

関連コンテンツ