戻る   IP アドレス  (Internet Protocol Address)



IP アドレスは インターネットに接続されているコンピュータにつけられている番号です。
各家庭の電話機や携帯電話端末にそれぞれ電話番号がついているのと同じようなものです。

世の中に同じ番号の電話機がいくつもあると困りますが、 IP アドレスも世界中で同じ番号のコンピュータがないように管理されています。

電話番号は、 たとえば
072-805-2801
( これは関西外大の電話番号です。イタズラ電話はご遠慮下さい。)

ですが、 左から順に 市外局番 - 市内局番 - 加入電話番号 となっていて、 世の中に同じ番号の電話がないように、 電話会社によって管理されています。


IP アドレスの場合、 たとえば
11011011011110100011110110010011

で、 「電話番号のようなもの」 とはいっても、 コンピュータにつける番号ですから、 2進数で 32 桁の番号です。
IP アドレスが重複することのないように、 日本では JPNIC (Japan Network Information Center: http://www.nic.ad.jp/) が管理しています。

しかし、 2 進数のままでこれを人に扱えというのは酷ですから、 まず 8 桁毎に区切ります。

11011011 .01111010 .00111101 .10010011

しかしこれでも、 読んだり書いたりするは大変です (ためしに、 上の 32桁の数字を書き写してみて下さい!)
つぎに 8 桁毎に 10 進数に置き換えます。 最初の 11011011 は 10進数では 219 です。 同様にして、 全体では

  219 .122 .61 .147  

となります。 これなら、 ストレスがありません
これが、人が取り扱うときの 「IP アドレス」 です。





電話番号には 市外局番 - 市内局番 - 加入電話番号 といった階層構造がありますから、 各電話局で市内局番と電話番号さえ重複しないようにすれば、 日本全国でも重複することはありません。
同じようなしくみが IP アドレスにもあります。

IP アドレスのクラス


これは IP アドレスの 「クラス」 という考え方です。
IP アドレスは ネットワークアドレス部 と ホストアドレス部 に分けられます。
ネットワークアドレスは JPNIC から各組織に割り当てられ、 ホストアドレスは各組織内で重複しないように設定します。
(上図の "x" は 2進数の 0 または 1 ですが、 ネットワークアドレス部、 ホストアドレス部のそれぞれで、 0 ばかり、または 1 ばかりという設定は一般的には使用できません。 以下の説明で 27−2 = 126 など、 2 を引いているのはこのためです。)

例えば クラス A の場合。
ネットワークアドレスは 8 ビットですが、 上位 1 ビットは "0" に固定されているので残り 7 ビット、 ということは、  27−2 = 126 の組織にネットワークアドレスを割り当てることができます。 24ビットのホストアドレス (224−2 = 16,777,214) は組織内で設定します。

クラス C の場合。
ネットワークアドレスは 24 ビットですが、上位 3 ビットは "110" に固定されているので、残り 21 ビット、 221−2 = 2,097,150 の組織にネットワークアドレスを割り当てることができます。 ホストアドレスは 8 ビット (28−2 = 254) です。




IP アドレスは 32 ビットですから、 4,294,967,296 (≒43億) 台のコンピュータを識別することができますが、 クラスの運用ではクラス A は 126、 クラス B は 1万6千、 クラス C は 209万余り の組織 (会社や大学、政府機関など) にしか IP アドレスを割り当てることができません。 インターネットができた当初、あるいはおそらく 10年前までなら、 「××大学は、少し余裕をみてクラス B にしておくか。」 くらいに、 鷹揚に IP アドレスを割り振っていてもよかったのでしょう。
しかし、現在すでに 8億9千万台ものホストコンピュータが インターネットに接続されています。

クラス C では組織内で 254台のコンピュータを接続できますが、 10台もつなげれば十分という組織も多いはずですから、一律 254台ではムダが多すぎます。
このままでは IP アドレスが足りなくなってしまいます。
そこで、 CIDR (サイダー: Classless Inter-Domain Routing) というしくみが考えられました。
クラスはネットワークアドレス部とホストアドレス部を 8 ビット単位で区切りましたが、 CIDR は任意のブロック単位で区切って IP アドレスを割り当てます。


CIDR


たとえばクラス C (上図いちばん上) は 254台 のホストコンピュータを使えます が、 それでは足りない、 800台 は必要だという組織は、 かつてはクラス B にしていたわけです。 クラス B は 65,534台 ものホストコンピュータを接続できるのに、 これではほとんどの IP アドレスが実際には使用されず、 無駄になってしまいます。

そこで CIDR ではネットワークアドレス部の長さを 22 ビット、 ホストアドレス部の長さを 10 ビットにします (上図のまん中)。 1,022台 のホストコンピュータを接続できるので、 800/1022×100≒78% の IP アドレスが有効に使われます。 クラス C 4 つをひとつにまとめたことになります。 (クラス B を割り当ててしまうと 800/65534×100≒1.2% しか利用されません。)

10台も使えれば十分、 という小さい組織もあります。 この場合はネットワークアドレス部を 28 ビット、 ホストアドレス部を 4 ビットにします (上図いちばん下)。 14台 のホストコンピュータを接続できるので、 10台なら 10/14×100≒71% が利用されます。 (クラス C だと 10/254×100≒3.9 %)

関西外大の IP アドレス


これは関西外大の IP アドレスです。
ネットワークアドレス部の長さ (プレフィックス長) が 28 ビットであることを、 219.122.61.144/28 というふうに、 アドレスの後にビット長をつけて表します。



情報処理概論 に戻る   用語解説 に戻る   戻る  


*1 電話番号のそれぞれ、特に右の4桁の数字を何というのか分からなかったので、 NTT に電話をかけて聞いてみました。 「左端は市外局番、まん中は市内局番ですよね。 で、 右の4桁の数字は何というんですか」 と尋ねると、 最初電話に出た女性は急に黙ってしまって、 2分ほどたってから 「後ほどあらめてお知らせします」 といってこちらの名前と電話番号を聞いて電話を切り、 そのまま音信が途絶えてしまいました。
もう一度電話をかけると、 つぎに電話に出た男性はごくあっさり 「加入電話番号といいます」 と教えて下さり、 疑問が氷解しました。

*2 10進数表記にすると誰にも分かりやすいのですが、 2進数との関係が分かりにくくなって、 かえってストレスになる場合があります (*4 参照)。 どうして 16進数 にしなかったんでしょうか。

*3 ホストコンピュータ数の推移 をご参照ください。

*4 この場合、 IP アドレスの 10進数表記は最悪です。 219.122.61.144 は10進数、 28 は 2 進数の桁数です。 219.122.61.144/28 を見て、プレフィックス長と IP アドレスとの関係を即座に理解できる人は少ないのではないでしょうか。 16進数 (DB7A3D90/28) なら、分かる人が多いはずです。

自由利用マーク
update: 2012.09.28  address