サブネットマスクとは
IPアドレスは32ビット(8ビット×4)で表すことが決まっているため、その総数は約42億と有限です。公式テキストには「しかありません」と書いてあるので、一見多いようですが足りないという状況になりつつあるのでしょう。まぁ、この限りあるIPアドレスを効率よく割り当てる訳です。
クラスの考え方でいくと、数十しか必要なくてもクラスCの256個のアドレスを割り当てることになってしまいます。これは効率が悪いのが一目瞭然ですね。そこで考えられたのが
クラスレスです。クラスレスでは必要数に応じてネットワーク部とホスト部の境界を設定でき、効率よくIPアドレスを割り当てられます。この割り当ての単位をサブネットといいます。
クラスレスでは、クラスからネットワーク部の長さを特定できないので、IPアドレスとともにネットワーク部の長さの情報を含む
サブネットマスクという情報を使います。
具体的に説明すると・・・
クラスレスで割り振られたIPアドレスが192.168.24.64から192.168.24.127までの範囲とする。この場合、先頭から26ビットがネットワーク部になります(64を2進数で表すと1,000,000、127を2進数で表すと1,111,111。最初の「1」だけ変わらず、残りの6ビットが変化する。よって32ビット - 6ビット = 26ビット)。ネットワーク部の値は、そのサブネットワークの中で常に同一。サブネットマスクは、この変化しない同一の部分を「1」、変化する部分を「0」で表したものです。ここの例では、上位26ビットを「1」で、残りの6ビットをすべて「0」で表した11111111.11111111.11111111.11000000(=255.255.255.192)がサブネットマスクになります。
IPアドレス:192.168.24.64 |
11000000 | 10101000 | 00011000 | 01000000 |
IPアドレス:192.168.24.127 |
11000000 | 10101000 | 00011000 | 01111111 |
サブネットマスク:255.255.255.192 |
11111111 | 11111111 | 11111111 | 11000000 |
青:ネットワーク部/緑:ホスト部 |