IPアドレスのクラス
IPv4アドレスを先頭のビットの並びによってクラスAからクラスEに分ける区分方法である。かつてはクラスA・B・Cごとにネットワーク部の長さを固定していた。クラスDはマルチキャスト用、クラスEは予約された範囲である。
イマシルちゃんの解説
IPアドレスのクラスは、IPv4アドレスを先頭のビットの並びでA〜Eに分ける区分方法だよ。
このうちA・B・Cは、ネットワークの大きさを大・中・小の3サイズで扱うために使われていたんだ。
ネットワークを表す部分の長さをクラスごとに固定する扱い方をクラスフルというんだ。
でも、3サイズでは必要な台数に合わずにアドレスが余ることがあったの。
だから今は、クラスに縛られずにネットワーク部の長さを決めるCIDRが使われているよ。
一方、Dは特定のグループへ送るマルチキャスト用で、Eは予約された範囲なんだ。
A・B・Cのサイズ分けと、D・Eの用途の違いを分けて考えると整理しやすいね。
この解説はわかりやすかったですか?
より深い解説
定義
IPアドレスのクラスは、RFC 791で定められた、IPv4アドレスの区分方法である。アドレスの先頭のビットの並びでクラスが決まり、クラスごとにネットワーク部とホスト部の境界が固定されていた。このような扱い方をクラスフルという。
クラスの一覧
| クラス | 先頭のビット | 先頭のオクテットの範囲 | ネットワーク部 | 用途 |
|---|---|---|---|---|
| A | 0 | 0~127 | 8ビット | 大規模なネットワーク |
| B | 10 | 128~191 | 16ビット | 中規模なネットワーク |
| C | 110 | 192~223 | 24ビット | 小規模なネットワーク |
| D | 1110 | 224~239 | なし | マルチキャスト |
| E | 1111 | 240~255 | なし | 予約(実験用) |
先頭のビットが1つずつ「1」に変わっていくことで、クラスが判別できる。先頭のオクテットの範囲は、先頭のビットから計算できる。たとえばクラスCは「110xxxxx」なので、11000000(192)~11011111(223)となる。
各クラスのホスト数
| クラス | ホスト部 | 1つのネットワークで使えるホスト数 |
|---|---|---|
| A | 24ビット | 2^24 − 2 = 16,777,214 |
| B | 16ビット | 2^16 − 2 = 65,534 |
| C | 8ビット | 2^8 − 2 = 254 |
「−2」は、ホスト部がすべて0のネットワークアドレスと、すべて1のブロードキャストアドレスを除くためである。
クラスの中の特別なアドレス
| アドレス | クラス | 意味 |
|---|---|---|
| 10.0.0.0/8 | A | プライベートアドレス |
| 127.0.0.0/8 | A | ループバックアドレス |
| 172.16.0.0/12 | B | プライベートアドレス |
| 169.254.0.0/16 | B | リンクローカルアドレス |
| 192.168.0.0/16 | C | プライベートアドレス |
クラスフルの問題とCIDR
クラスフルの方式では、ネットワークの大きさが3種類しかなく、次のような問題が起きた。
- 300台の組織にクラスCでは足りず、クラスB(約6万5千台)を割り当てると、ほとんどが無駄になる
- クラスCを多数割り当てると、インターネットの経路表が膨れ上がる
そこで、クラスにとらわれずに任意の長さでネットワーク部を決めるCIDR(Classless Inter-Domain Routing)が導入された。現在のIPアドレスの割り当てとルーティングは、すべてクラスレスで行われており、「/24」のようにプレフィックス長を明示して表す。
ただし、クラスの区分は、マルチキャスト(クラスD)の範囲を覚えるときや、古いプロトコル(RIPv1など)の動作を理解するときに、今も知っておく必要がある。
クラスDとクラスEの見分け方
| クラス | 先頭の4ビット | 範囲 |
|---|---|---|
| D | 1110 | 224.0.0.0~239.255.255.255 |
| E | 1111 | 240.0.0.0~255.255.255.255 |
マルチキャストアドレスの先頭4ビットは、1111ではなく1110である。先頭4ビットが1111のアドレスは、クラスEとして予約されている(ただし255.255.255.255は限定ブロードキャストとして使われる)。
実際の試験ではここに出る!全15問
ネットワークスペシャリスト
- 午前Ⅱ
テクニカルエンジニア(ネットワーク)
- 午前