「ネットワーク ID」 と 「ホスト ID」 の区切り方

今回は前回、予告したとおり、 IP アドレスの「ネットワーク ID」 と 「ホスト ID」 の区切り方 を説明します。

はじめに、前回のおさらいをしておきましょう。

コンピュータを識別する 「番号」 は 「IP アドレス」 というのでしたね。

そして、その 「IP アドレス」 は 「ネットワーク ID」 と 「ホスト ID」 に分けられます。

(かつ、「ホスト」 というのは、 「ぼく、いけめーん」 のホストクラブのホストではなく、「コンピュータ」 のことでした)

こうすることによって、 「どのネットワークのどのコンピュータ」 ということが識別できるのでしたね。

さて、問題は 「ネットワーク ID」 と 「ホスト ID」 をどのように分けたらよいか、ということです。

その仕組みを説明する前に、「IP アドレス」 自体を、もう少し詳しく見ておきましょう。

IP アドレス は 32 ビットのデータ

以前、 IP アドレスは次のような、. (ドット) 区切りの4つの数字の組み合わせだ、と説明しました。

192.168.10.30
IP アドレスの例

実はこの表現はあまり正確ではありません。IP アドレスはもう少し正確に言うと、次のようにいえます。

IP アドレスは 32 ビットのデータです。
読みやすくするために 32 ビットを 4 つに区切り、8 ビットずつ 10 進数の数字で表記します。

(注) ビットというのは数字を 2 進数で表したときの 1 桁のことだと考えてください。 つまり、「32 ビットのデータ」 ということは 「32 桁の 2 進数のデータ」 ということです。

つまり、192.168.10.30 は次のように、. (ドット) 区切りのそれぞれのパートを 2 進数に直して考えるものなのです。

10進数192.168.10.30
 ...
2進数11000000.10101000.00001010.00011110

つまり、11000000101010000000101000011110 という 32 個の 1 と 0 の並びが IP アドレスの正体です。

これではあまりにも読みにくいので、8 個ずつ 4 つの部分に区切り、それぞれの部分を 10 進数で表現したのが、 192.168.10.30 という IP アドレスなのです。

ここまで、いいでしょうか?何か質問はありませんか?
(質問がありましたらブログのコメントへどうぞ! どの記事に対するコメントでも構いません)

ちなみに、10 進数と 2 進数の数字の変換は Windows 付属の電卓が使えます。 やり方は 電卓を使った 2 進数と 10 進数の変換 を見てください。

サブネットマスク ~ ネットワーク ID と ホスト ID を区別する

さて、話を元に戻して 「ネットワーク ID」 と 「ホスト ID」 をどのように分けたらよいか、という問題を考えましょう。

答えをいってしまいますと、実は 「IP アドレス」 はそれ単体で使うのではなく、

「どこでネットワーク ID と ホスト ID を区切るか」という情報もペアで考えるものなのです

(隠しててゴメンナサイ! )

「どこでネットワーク ID と ホスト ID を区切るか」 という情報は サブネットマスク といいます。

例えば、 IP アドレス 32 ビットのうち、最初の 24 ビットが 「ネットワーク ID」、後ろの 8 ビットが 「ホスト ID」 とするなら、 ネットワーク ID に対応する部分を 1 に設定、ホスト ID に対応する部分を 0 に設定して、サブネットマスクを下図のように設定します。

IP アドレス10 進数192.168.10.30
 ...
2 進数11000000.10101000.00001010.00011110
サブネットマスク ネットワーク ID.ホスト ID
2 進数11111111.11111111.11111111.00000000
 ...
10 進数255.255.255.0

このように、 1 をずらずらーっと並べることによって、 「ここまでがネットワーク ID ですよ!」 と宣言するのです。

それではあなたのパソコンの IP アドレスの設定を、前回使った ipconfig コマンドを使ってもう一度見てみましょう。

ipconfig コマンドの実行の仕方を忘れた方は、「番号」 は 「IP アドレス」 を読み返してください。

確かに IP アドレスと一緒に、サブネットマスクも書いてありました。

このサブネットアドレスの情報によって、 「ネットワーク ID」 と 「ホスト ID」 を区別するのです。

IP アドレスの書き方

上の表の状態を例に取ると、IP アドレスはサブネットマスクもつけて、次のように書きます。

IP アドレス:192.168.10.30
サブネットマスク:255.255.255.0

または、「上から 24 ビットがネットワーク ID ですよ」 という意味で、次のようにも書きます。

192.168.10.30/24

/ (スラッシュ) の後ろの数字がネットワーク ID のビット数をあらわしています。

いかがでしたでしょうか?

「サブネットマスク」 を利用することによって、 「IP アドレス」 を正しく解釈できるようになります。
次回はもう少し具体的な例に当てはめて、理解を深めようと思います。お楽しみに!

ネットワークを表すときはホスト ID は 0

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Web/DB プログラミング徹底解説