ネットワークアドレスを指定するサブネットマスク

同じネットワークアドレスになっているマシン同士が、同じネットワークに属して、 同じネットワークに属しているマシン同士しか、直接に通信できないようになっている仕組みでした。 (違うネットワークに伝達するにはルータまたはL3スイッチを介さなけばならない)
それは、IPアドレスの一部を ネットワークのアドレス部として使い、 残りの範囲をホストの指定用にする規則にし、
共通のネットワークのアドレス部のIPアドレスを設定した機器同士を 接続することで、ネットワーク作る規則でした。
(参考:ネットワークアドレスとルータの関係

このネットワークアドレスの範囲を、IPアドレスとは別に指定するものがサブネットマスクです。
このサブネットマスクの1の並びの範囲で、ネットワークのアドレス部 の範囲を指定する規則になっています。
例えばクラスCの192.168.0.1のIPアドレスであれば、サブネットマスクは、 255.255.255.0となります。
255.255.255.0を2進で書くと11111111.11111111.11111111.00000000ですが、
この1が並ぶ3byte分のIPアドレス範囲をネットワーク部に指定していることになります。 このイメージを下記に示します。

IPアドレス (例 192.168.0.1)
ネットワークアアドレス部(例 192.168.0) ホストアドレス部(例 .1)
サブネットマスクの1の並び(例 255.255.255) サブネットマスクの0の並び(例 .0)
サブネットマスク (例 255.255.255.0)

そして、この2つをビットごとにANDした192.168.0.0ネットワークアドレスになります。
(ホスト部のIPアドレスを全て0にしたアドレスがネットワークアドレスと言えます。)

上記の例では、ホスト部のサイズが8bitで、クラスCのサイズのネットワークです。
サブネットマスクを使うということは、bit単位でネットワーク部を指定できることです。
以下で、ネットワーク部を2bit増やして4倍の26bit(ホスト部は4分の1の6bit)にした例を示します。

具体例で、192.168.128.92のIPアドレスで、255.255.255.192のサブネットマスクで示します。
以下では、これを2進数にしてAND演算して、ネットワークアドレスを求めています。

IPアドレス 11000000.10101000.10000000.01011100
サブネットマスク 11111111.11111111.11111111.11 000000
ネットワークアドレス 11000000.10101000.10000000.01 000000


これは これまであったネットワークを、4つのネットワークに分割したことを意味します。(ネットワークを増やしたと言える)

なお、この1のビットが26ビット続いていますが、このマスク幅を使って、 ネットワークアドレスの情報を含んだIPアドレスを、192.168.128.92/26と表現する方法があります。 この表現は、CIDR(サイダー:Classless Inter-Domain Routing)表記と呼ばれます。

←『未選択』の箇所を選択してから評価ボタンをクリックしてください

以下のボタンで、ビット演算のイメージを実験で確認できます。
(ここよりダウンロードも可能)