目 次
目 次/関連項目

1.3 IPアドレス

 本節ではIPアドレスについて説明する。前節で述べたように、IPアドレスはインターネットの世界でコンピュータに割り当てられる住所である。この住所を割り当てるにあたり、いろいろとルールがある。本節ではIPアドレスを設定するためのルール、IPアドレスの持つ意味、そして現行のIPアドレスの問題点などについて説明する。

1.3.1 IPアドレスのフォーマット

 IPアドレスは2進数の32桁(32ビット:4オクテット)の数値で表す。しかし、これでは人間には読みにくいので普段表示する場合には1オクテット(8ビット)ずつ、"."(ピリオド)で区切り各8ビットを10進数で表す。


例:

11000000101010000000000000000001

11000000.10101000.00000000.00000001

192.168.0.1


1.3.2 ネットワークアドレスとホストアドレス

 IPアドレスには2種類の情報が格納されている。 それはネットワークアドレス(network address)ホストアドレス(host address (local address))である。 ネットワークアドレスはデータリンクごとに割り当てられるアドレスのことである。同一のデータリンク内のホストは必ず同じネットワークアドレスのIPアドレスが割り当てられる。 ホストアドレスはホスト個別に割り当てられる番号のことである。例えば図1.3.1のネットワークAの場合、ネットワークアドレスは192.168.1.0である。ネットワークAに所属するホスト、ルータのIPアドレスの上位24ビットは必ず192.168.1でなければならない。 ホストアドレスは値が重複しないように個別にアドレスを割り当てる。IPアドレスの中で、どこまでがネットワークアドレスで、どこからがホストアドレスなのかを定める方法にクラス(class)という概念がある。

図1.3.1:ネットワークアドレスとホストアドレス

1.3.3 クラス

 クラスはAからEまであり、それぞれにネットワークアドレスとホストアドレスの範囲が定められている。先頭からのビット列によりクラスを識別する事ができる。図1.3.2にクラスごとのフォーマットの違いを示す。
  • クラスA
    最上位ビットは0であり続く7ビットがネットワークアドレスである。そして残り24ビットがホストアドレスである。 クラスAで割り当てる事ができるホストの数を求めてみる。224 =16777216。ここでホストアドレスの全て1のものと全て0のものは予約されていて使用することができない(後述)。よって、クラスAで割り当てる事ができるホストの数は224 - 2 = 16777214個となる。

  • クラスB
    最上位2ビットは10であり続く14ビットがネットワークアドレスである。そして残り16ビットがホストアドレスである。クラスBで割り当てる事ができるホストの数は216 - 2 = 65534個となる。

  • クラスC
    最上位3ビットは110であり続く21ビットがネットワークアドレスである。そして残り8ビットがホストアドレスである。クラスCで割り当てる事ができるホストの数は28-2 = 254個となる。

  • クラスD
    最上位4ビットは1110であり続く28ビット、つまり残り全てがネットワークアドレスとなる。クラスDのIPアドレスはIPマルチキャストと呼ばれ、1対多の通信を行う時に利用される。IPマルチキャストについては後述。

  • クラスE
    最上位5ビットは11110である。このクラスEのIPアドレスは将来のための実験用のため普段は利用できない。

クラスA
0 8 16

24

31

0

ネットワーク
アドレス
ホストアドレス

クラスB
0 8 16

24

31
1
0
ネットワークアドレス
ホストアドレス

クラスC
0 8 16

24

31
1
1
0
ネットワークアドレス
ホスト
アドレス

クラスD
0 8 16

24

31
1
1
1
0
 

クラスE
0 8 16

24

31
1
1
1
1
0
未使用

図1.3.2:クラスごとのフォーマットの違い



1.3.4 ネットマスク

 IPアドレスの中でどこまでがネットワークアドレスでどこからがホストアドレスかを表す表記法にネットマスクアドレスマスクともいう)がある。これはネットワークアドレスの部分(クラス識別ビットも含む)の各ビットを1とし、ホストアドレスの部分のビットを0とするものである。 上のクラスA、B、Cの場合は以下のようになる。()内は10進数表記。
  • クラスA
     11111111 00000000 00000000 00000000(255.0.0.0)

  • クラスB
     11111111 11111111 00000000 00000000(255.255.0.0)

  • クラスC
     11111111 11111111 11111111 00000000(255.255.255.0)

1.3.5 サブネットワーク

 1.3.3節で説明したクラス(A,B,C)は現在では使われていない。というのは、クラスによるIPアドレスの設定方法では無駄が多いためである。例えば1000台分のホストのIPアドレスを必要としている組織があったとする。この場合、クラスC(254台)では足りないのでクラスB(65534台)のIPアドレスを取得することになる。しかし、必要なのは1000個でいいので、残りの約6万4千個のIPアドレスは無駄になってしまう。また、クラスBのIPアドレスを取得できる組織は1万6千余通りしかなくIPアドレスを満足に取得することが難しくなってきている。つまり、従来のクラス分けでは対応することができない。そこで、この問題を解決する方法としてサブネットワークという概念が導入された。

 サブネットワークは従来のクラスごとによって定められるホストアドレスの範囲をネットワークアドレス部として拡張する仕組みである。これにより、ネットワークアドレスとホストアドレスの範囲を細かく指定でき、IPアドレスの無駄がなくなる。 IPアドレスとネットマスクを同時に表記する事により、ネットワークアドレスの範囲が分かる。このときのネットマスクを特にサブネットマスクと呼ぶ。

 図1.3.3は、クラスBのIPアドレスに6ビット長のサブネットフィールドを拡張したものである。この例の場合、IPアドレスを割り当てることのできるホストの数は210 - 2 = 1022台(ホストアドレスが全て0のアドレスと全て1のアドレスは予約されているため2を引く)である。

図1.3.3:クラスBのIPアドレスに6ビット長のサブネットフィールドを定義した例


 IPアドレスとサブネットマスクは2つ並べて表記せずに、1つにまとめて表記する事がよくある。上の例の場合、 192.168.0.1/28 と表示すれば同じ意味になる。 これは左から28ビット分がネットワーク番号、残りの4ビット分がホストアドレスであることを示す。 /28をプレフィックスと呼ぶ。また、192.168.0.0/24は192.168/24のように0を省略しで書くことができる。これは192.168より下のビットは全て0であるという意味である。
 サブネットワークについてはRFC950で規定されている。



1.3.6 CIDR

 CIDR(Classless Inter-Domain Routing)はクラスの概念をなくし、サブネットマスクを用いてネットワークアドレスとホストアドレスを区別する考え方である。CIDRはサイダーと読む。サブネットマスクの値とそのときに割り当てることができるホストの数を表1.3.4に示す。
 CIDRについてはRFC1518/1519/1817で規定されている。

表1.3.4 : サブネットマスクと利用可能なホスト数
10進数表記
2進数表記
プレフィックス
ホストの数
255. 0. 0. 0
11111111.00000000.00000000.00000000
/8
16777214
255. 128. 0. 0
11111111.10000000.00000000.00000000
/9
8388606
255. 192. 0. 0
11111111.11000000.00000000.00000000
/10
4194302
255. 224. 0. 0
11111111.11100000.00000000.00000000
/11
2097150
255. 240. 0. 0
11111111.11110000.00000000.00000000
/12
1048574
255. 248. 0. 0
11111111.11111000.00000000.00000000
/13
524286
255. 252. 0. 0

11111111.11111100.00000000.00000000

/14
262142
255. 254. 0. 0
11111111.11111110.00000000.00000000
/15
131070
255. 255. 0. 0
11111111.11111111.00000000.00000000
/16
65534
255. 255. 128. 0
11111111.11111111.10000000.00000000
/17
32766
255. 255. 192. 0
11111111.11111111.11000000.00000000
/18
16382
255. 255. 224. 0
11111111.11111111.11100000.00000000
/19
8190
255. 255. 240. 0
11111111.11111111.11110000.00000000
/20
4094
255. 255. 248. 0
11111111.11111111.11111000.00000000
/21
2046
255. 255. 252. 0
11111111.11111111.11111100.00000000
/22
1022
255. 255. 254. 0
11111111.11111111.11111110.00000000
/23
510
255. 255. 255. 0
11111111.11111111.11111111.00000000
/24
254
255. 255. 255. 128
11111111.11111111.11111111.10000000
/25
126
255. 255. 255. 192
11111111.11111111.11111111.11000000
/26
62
255. 255. 255. 224
11111111.11111111.11111111.11100000
/27
30
255. 255. 255. 240
11111111.11111111.11111111.11110000
/28
14
255. 255. 255. 248
11111111.11111111.11111111.11111000
/29
6
255. 255. 255. 252
11111111.11111111.11111111.11111100
/30
2

 

1.3.7 ブロードキャストアドレスと不特定なアドレス

 IPアドレスの設定においてホストアドレスがすべて「1」のものと全て「0」のものは予約されているためアドレスとして割り当てることができない。 ホストアドレスが全て「1」のアドレスはブロードキャストアドレスと呼ばれ、そのネットワーク番号に所属する全てのホストを表すアドレスを意味する。 ホストアドレスが全て「0」のアドレスはネットワークアドレスそのものを表すためホストに割り当てる事ができない。また、全て0のアドレスは不特定なアドレスと呼ばれる。


1.3.8 特別なIPアドレス

1.3.8.1 プライベートIPアドレス

 プライベートIPアドレスは誰もが自由に割り当てることができるIPアドレスのことである。もちろん、同一のデータリンク内で同一のプライベートIPアドレスを割り当てることはできない。プライベートIPアドレスは誰もが自由に設定できる代わりに、そのホストはインターネットに直接接続することができない。 プライベートIPアドレスとして予約されているアドレス空間を以下に示す。

 10.0.0.0〜10.255.255.255(10/8)
 172.16.0.0〜172.31.255.255(172.16/12)
 192.168.0.0〜192.168.255.255(192.168/16)

1.3.8.2 ループバックアドレス

 ループバックアドレスは自分自身を表すアドレスのことである。 このアドレスを宛先のIPアドレスに指定した場合、パケットはネットワークに流れない。 ループバックアドレスを次に示す。
127.0.0.0〜127.255.255.255(127/8)

また、上記2つ以外のIPアドレスはグローバルIPアドレスと呼ばれる。

1.3.9 ホストをインターネットに接続するためには

 ホストをインターネットに接続するためには最低次の3つのアドレスを設定する必要がある。
  1. 自ホストのIPアドレス
  2. 自ホストのサブネットマスク
  3. ルータ(デフォルトゲートウェイ)のIPアドレス
 1.、2.で自ホストのIPアドレスと、そのIPアドレスのどこまでがネットワークアドレスかを設定する。3.のデフォルトのルータのIPアドレスは、外部のネットワークへの出口となるルータのIPアドレスである。外部と通信する場合は通常このルータを経由する。また、このルータはデフォルトゲートウェイとも呼ばれている。

 上の設定はあくまで手動でインターネットに接続するためのものである。多くの場合、IPアドレスを管理するサーバ(これをDHCPサーバと呼ぶ)から自動的にIPアドレスを取得する。ISP(Internet Service Provider: インターネット接続業者)と契約している場合、ISPのDHCPサーバから取得することが多い。DHCPサーバの詳しい説明はコース3、コース4で説明する。

 また、ブラウザでWebサイトを閲覧する際にhttp://www.foocrane.jp/のように文字列を入力する場合は上の3つのアドレスの他にDNSサーバのIPアドレスを設定する必要がある。DNSサーバについてはコース3、コース4で説明する。


1.3.10 IPアドレスの管理

 世界中のIPアドレスは円滑に運営するためにIANA(Internet Assigned Number Authority)が一元管理している。IANAは地域ごとに3つの管理団体にIPアドレスの管理を委託している。北米、南米、カリブ海、アフリカ大陸のサハラ砂漠以南はARIN(American Registry for Internet Numbers)が、アジア太平洋地域はAPNIC(Asia Pacific Network Information Center)が、欧州、中近東、アフリカ大陸のサハラ砂漠以北はRIPE/NCC(Resource IP Europeens / Network Coordination Center)が管理している。日本ではJPNIC(JaPan Network Information Center)が管理を行い、JPNICはAPNICに属している。申請者がIPアドレスを申請するときは、インターネット接続業者(ISP)に申請を代行してもらうのが一般的だが、JPNICへ直接申請することもできる(図1.3.5)。

図1.3.5:IPアドレスの管理