サブネットマスクとは
サブネットマスクとは、IPアドレスからネットワーク部とホスト部を識別する値。
サブネットマスクを理解するためには、ホスト部とネットワーク部について理解してある必要があります。ホスト部とネットワーク部がよくわからない人は別記事で解説していますのでこちらを参照してください。
サブネットマスクの役割
ホスト部とネットワークが理解がある上で、IPアドレスだけ(192.168.2.1)を見た時に、ネットワーク部とホスト部の区別がつくでしょうか。これだけでは区別はつきません。
その区別をつかせるために使用されるのがサブネットマスクです。サブネットマスクはIPアドレスの後に「/(スラッシュ)」と数字をつけて表します。
192.168.2.1/24
「/24」はIPアドレスの3つ目の.(ピリオド)までがネットワーク部(192.168.2)であることを表しています。
「/16」なら2つ目の.(ピリオド)までがネットワーク部(192.168)
「/8」なら1つ目の.(ピリオド)までがネットワーク部(192)
とサブネットマスクを使用することでネットワークがどこかを判別することができます。
サブネットは独自に切ることができますので、どこまでがネットワーク部かを判別するためにもサブネットマスクは必要です。
サブネットマスクの計算方法
「/24」なら3つ目のピリオドまでと上記では言いましたが、どうやって区別したのでしょうか。また実際には「/26」だったり「/12」だったりサブネットマスクは色々あります。
どのようにこのサブネットマスクからネットワーク部とホスト部を区別しているのかをここでは解説します。
サブネットマスクからネットワーク部とホスト部を計算する手順は以下の通りです。
1.IPアドレスを2進数に変換する。
2.サブネットマスクを2進数に変換する。
3.サブネットマスクから「ネットワーク部」と「ホスト部」に分ける
4.ネットワーク部とホスト部を10進数に直す。
例を見ながら解説していきます。「192.168.2.1/12」のIPアドレスがあったとします。この時のネットワーク部とホスト部を見ていきます。
手順に則って計算していきましょう。
IPアドレスを2進数に変換する。
まずはIPアドレスの部分を2進数に変換します。
サブネットマスクを2進数に変換する。
サブネットマスクも2進数に変換します。2進数に変換する前にそもそもサブネットマスクの数字は何を表しているのでしょうか。
サブネットマスクの数字というのは、左から何ビットまでが「1」なのかを表しています。
IPアドレスは 8ビット × 4 (ピリオド「.」を除く)の構成でできていますので、左から12ビットまでが「1」となり、残りの20ビットは「0」となります。
サブネットマスクから「ネットワーク部」と「ホスト部」に分ける。
2進数にしたIPアドレスとサブネットマスクからネットワーク部とホスト部を分けます。
サブネットマスクが「1」の部分がネットワーク部となり、「0」の部分がホスト部となります。
今回ホスト部の内訳は以下のようになります。
ネットワークアドレス :11000000.10100000.00000000.0000000
11000000.10100000.00000000.0000001
ホストアドレス : ~
11000000.10101111.11111111. 11111111
ブロードキャストアドレス:11000000.10101111.11111111. 11111111
ネットワーク部とホスト部を10進数に直す。
ネットワーク部とホスト部を分けることが出来たら、人間が見やすいように10進数に直すだけです。
ネットワーク部
11000000.10100000.00000000.0000000 → 192.160.0.0
ホスト部
ネットワークアドレス:
11000000.10100000.00000000.0000000 → 192.160.0.0
ホストアドレス:
11000000.10100000.00000000.0000001 → 192.160.0.1
~
11000000.10101111.11111111. 11111110 → 192.175.255.254
ブロードキャストアドレス:
11000000.10101111.11111111. 11111111 → 192.175.255.254
これでサブネットマスクを使用した計算は完了です。
まとめ
サブネットマスクは「IPアドレスからネットワーク部とホスト部を見分けるために使われるもの」です。
「/」の後の数字を見ることでどのネットワークにいるのかわかります。
また今回は計算方法について解説しましたが、計算できるようになる必要はありません。(資格を取る人は除きます。)どのようにしてサブネットマスクからネットワーク部とホスト部を分けているのかわかれば問題ありません。