前回でチャプター1の内容が終わったので、今回はチャプター2に入ります。テーマは「IPアドレスについて学ぼう ~ネットワークの住所~」です。
前回(その4)はこちら↓
IPアドレスとは何か
IPアドレスはTCP/IPで通信する機器を識別するために用いられるアドレスです。ネットワークに接続されているホスト(TCP/IPでは機器の事をホストと呼びます。)の中で、通信を行う宛先を認識するために用いられます。
IPアドレスの構成
IPアドレスは32ビットの2進数で構成されます。しかし、2進数で32ビットとなると、0と1が32個並ぶ形となり、人間的にはとても分かりづらいですね。そこで、人間用の表記としては32ビットを4つの8ビットに分けて、さらに10進数の形で表記します。
つまり、以下の図のようになります。(本より引用)
IPアドレスはネットワークアドレス部とホストアドレス部の組み合わせで構成されています。ネットワークアドレスはどのネットワークに接続されているのかを、ホストアドレスはネットワーク内のどのホストかを識別するためのアドレスです。
IPアドレスのクラス
IPアドレスはクラスA~クラスEの5種類に分類することができます。このうち研究用途で一般には使われることのないクラスEを除く4つについて特徴を以下にまとめます。
- 先頭1ビット(左端のビット)が「0」。
- 左端からの1~8ビット目までの8ビット分がネットワークアドレス部になる
- 左端から9ビット目以降の24ビットがホストアドレス部になる
- 以上より、先頭8ビット(4分割の左端)は「0 ~ 127」の範囲となる
- 一つのネットワークに16,777,214個のホストを割り当てられる
- 先頭2ビットが「10」
- 左端からの1~16ビット目までの16ビット分がネットワークアドレス部になる
- 左端から17ビット目以降の16ビットがホストアドレス部になる
- 以上より、先頭8ビット(4分割の左端)は「128 ~ 191」の範囲となる
- 一つのネットワークに個65,534個のホストを割り当てられる
- 先頭1ビット(左端のビット)が「110」で始まる。
- 左端からの1~24ビット目までの24ビット分がネットワークアドレス部になる
- 左端から25ビット目以降の8ビットがホストアドレス部になる
- 以上より、先頭8ビット(4分割の左端)は「192 ~ 223」の範囲となる
- 一つのネットワークに254個のホストを割り当てられる
- 先頭1ビット(左端のビット)が「1110」で始まる。
- すべてのビットがネットワークアドレス部になる
- ホストアドレス部は存在しない
- マルチキャスト通信で使われる
別の本からですが、よくまとまっている図があるので引用します。
先頭ビットを見ればどのクラスのIPアドレスなのかが一発でわかるようになっています。
割り当てられないIPアドレス
IPアドレスを振り当てる際に、「この数値は使っちゃだめだよ~」という決まり事が存在します。
例えばホストアドレス部のビット列がすべて1というアドレスは、ブロードキャストアドレスとして予約されているため使えません。これは同一ネットワーク内のすべてのホストに向けて通信するものです。
また、ホスト部のビット列がすべて0のアドレスも、ネットワークそのものを表すネットワークアドレスとして予約されているため使用できません。
よくわからん事
すべてのビットが0、すべてのビットが1のネットワークアドレスはダメとあるが、この本を含めていろんな本を読んでも「すべてのビットが0、すべてのビットが1のホストアドレスはダメな理由」に関する記述はあっても、ネットワークアドレスについて何でダメなのかが書いていない。ググってもよくわからないや。
ここで止まっていても仕方がないので、ここがよくわからないという事実を頭の片隅に置きながら先に進むのものとする。本の記述が間違っている可能性もなくはないが、おそらく記述がないだけで、何かしたのブロードキャストアドレスのような予約が入っているのだろう。
終わりに
今回はIPアドレスの数値列の意味に関するお話でした。本当はチャプター2全部を一個の記事にまとめようと思いましたが、「よくわからん事」をいろいろ調べていたら時間がかかってしまったので、ここまでで一つの記事としてアップロードすることにします。
いろんな資料を見ながら勉強するのは頭が疲れますが、それだけ効いているのでしょう。これは続けていきたい。手抜きして適当にやることだけは避けたいですね。