ホスト部がすべて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演算には「片方が0なら結果は必ず0」という性質があります。サブネットマスク(=ネットワークの範囲を決める数値)は、ネットワーク部の桁をすべて1、ホスト部の桁をすべて0にした特別なビット列です。
この性質を組み合わせると次のことが起きます。
・マスクが1の桁:IPの1か0がそのまま結果に残る(ネットワーク部を保持)
・マスクが0の桁:IPの値がどんな数でも結果は必ず0(ホスト部を強制ゼロに)
つまりANDを使う理由は、ホスト部だけを選択的にゼロにできるから。ネットワーク部はそのまま残し、ホスト部だけを0にした結果が「ネットワークアドレス」になるわけです。ほかの演算(ORやXOR)ではこの「ゼロにする」効果が出ないため、ANDが選ばれています。
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枚は家の番地として使えないのと同じイメージです。
ネットワークアドレスは、機器を個別に指すためでなく、「ネットワークのまとまり」を識別する目印として使われます。主な用途は次の2つです。
・ルータの経路制御(ルーティング):ルータ(=ネットワーク間のデータを転送する装置)は「宛先のIPがどのネットワーク宛か」を判断して経路を選びます。この判断に使う経路表(ルーティングテーブル)には、ネットワークアドレスが登録されています。
・同一ネットワーク判定:2台の機器が同じネットワークにいるかどうかは、それぞれのIPアドレスとマスクをANDして求めたネットワークアドレスが一致するかで分かります。
たとえば 192.168.1.10/24 と 192.168.1.30/24 はどちらもネットワークアドレスが 192.168.1.0 なので同じネットワーク内と判断できます。192.168.2.10/24 はネットワークアドレスが 192.168.2.0 になるため別のネットワークです。この判定をルータが自動的に行い、データを適切な経路へ送り出しています。