パソコンをインターネットにつなぐときに欠かせない設定の一つに,サブネット・マスクの項目があります。表記方法はIPアドレスと似ており,「255.255.255.0」のようなのが一般的です。ネットワーク管理者に言われた通りに,そのまま設定しているだけの方もいるでしょう。一見しただけでは,意味のわからない数字の羅列のようにも見えます。

 しかし,サブネット・マスクの値はとても重要です。この値が間違っていたり設定し忘れていると,正しく通信できなくなってしまいます。サブネット・マスクの役割は何なのでしょうか。

ネットワークの一部分がサブネット

 サブネット・マスクの役割を理解するために,まずはサブネットについて押さえておきましょう。

 サブネットとは,「大きなネットワークを小さく分けたネットワーク」のことです。サブネット(subnet)とは,ネットワークを意味する「net」に,接頭語の「sub」が付いた用語です。そしてサブ(sub)には,「副次的」や「細分」という意味があります。つまり,大きなネットワークを細かく分けた一つがサブネットというわけです。

 インターネットや企業ネットワークは,一つの大きなネットワークと見ることができますが,実際はいくつかのサブネットに分割できます。パソコンは,このサブネットを通信の基本的な単位として扱います。つまり,パケットの送り先のマシンが自分と同じサブネット内にあるならパケットを相手に直接届け,自分の所属するサブネット以外にあるなら最寄りのルーターにパケットの中継を任せるのです。

 このサブネットの範囲を決めているのが,サブネット・マスクです。そもそも,マスク(mask)には,「覆い隠すもの」という意味があります。サブネット・マスクは,大きなネットワークから不要な部分を隠し,目的のサブネットだけを取り出すための情報と考えるとわかりやすいでしょう。

自分が属すサブネット以外を隠す

 具体的には,パソコンが自分の所属するサブネットの範囲を知りたいとき,自分自身のIPアドレスとサブネット・マスクの二つを照らし合わせる作業を行います。実際の計算は,両者を2進数に直して32桁の1または0の数値にして,同じ桁のビットを照合します。サブネット・マスクが「1」に対応するIPアドレスのビットはそのまま生かし,「0」に対応するビットは「0」と見なします。この計算は論理積ろんりせきと呼ばれます。詳しくはTCP/IP関連の参考書などを参照して下さい。

 この二つのビットを照らし合わせる計算は,必要のないビットを隠して,必要なビットだけを残す作業になります。これが,サブネット・マスクに「マスク」という言葉が付いているゆえんです。

 この計算によって出てきた数値は,「ネットワーク・アドレス」と呼ばれており,これがサブネットを特定するアドレスになります。そしてパソコンは,このネットワーク・アドレスがわかってはじめて,正しく通信ができるのです。

 裏を返せば,パソコンのサブネット・マスクの設定を間違えると,パソコンはネットワーク・アドレスの計算を間違ってしまい,自分の所属するサブネットの範囲を見誤ってしまいます。その結果,実際はパケットの送り先が自分の所属するサブネット内にあるのに,そうでないと判断してしまったりして,正常な通信ができなくなってしまうのです。 サブネット・マスクは,パソコンが通信するときの基本となる範囲を知るための情報というわけです。