Chapter 8 -- IP version 6

Prev Chapter 7 -- MTU (Maximum Transmission Unit), Fragmentation
INDEX
Next Chapter 9 -- ICMP(internet control message protocol)

変更動機

 IPの現在の版(IPv4)はたいへんうまく動作している。 しかし、次のような理由によりバージョンアップすべき時期がやってきた。


なぜ IPv5 でなく IPv6 か?

 研究者が新しいIPの開発を進めるにあたって、そのプロジェクト名が必要になった。 その名前は、人気のあるテレビ番組の名前を参考に、次世代IP(IP-The Next Generation) と名づけられた。その後、正式の版番号をプロトコルのヘッダの中にいれることを決定した。 しかし、版番号5は実験的なST(ストリームプロトコル)に割り当てられていたため、 IPのバージョンは6となった。


IPv6の特徴


アドレスの割り当てられ方

 日本では、ISPに対してIPv6アドレスはAPNICから割り当てられる(IPv4はJPNICから割り当てられる)。 IPv4は割り当ての際、厳密な審査が入るが、IPv6ではアドレスの枯渇に関する審査はない。 ただし、きちんと運営できるという条件は課せられる。


IPv6データグラムの形式

 ベースヘッダ+(拡張ヘッダ)+データ領域という形からなる。 最小のデータグラムは、ベースヘッダ+データ領域である。 経済性と拡張性という理由からこのような形式を使うことに決定した。


IPv6ベースヘッダの形式


IPv6データグラムの構成例

base
header
TCP
header
TCPデータ

base
header
routing
header
fragment
header
TCP
header
TCPデータ


拡張ヘッダのフォーマット形式

 拡張ヘッダのサイズは、データごとに変わりうるので、 そのサイズ情報を格納しなければならない。よって、次のような形式になる。


パスMTU検出 (path MTU discovery)

 IPv6にて、フラグメントは送信者において行われる (ルータがフラグメンテーションを実行することはない)。 そのためには、あらかじめ転送ルートの最小MTU(path MTU)を知っておかなければならない。 パスMTU検出のためには、一般的に繰り返しの手順を用いる。 ホストは、一連のサイズのデータグラムを送信することによって、 最適なサイズを見つける。


拡張ヘッダ番号

0. 中継点オプション・ヘッダ (Hop-by-Hop Options Header)
1. ICMP
4. IPv4 ヘッダ
6. TCP ヘッダ
13. UDP ヘッダ
41. IPv6 ヘッダ
43. 経路制御ヘッダ (Routing Header)
44. 断片ヘッダ (Fragment Header)
50. 暗号ペイロード
51. 認証ヘッダ
58. ICMPv6
60. 終点オプション・ヘッダ (Destination Options Header)


IPv6コロン16進記法

 IPv4のようにドット区切り10進記法を用いると、 非常に長くなってしまうので、IPv6ではコロン16進記法を用いる。

F9DC:45a4:FFFF:FFFF:0:124B:88CA:FFFF

 先頭の0は省略可能である。

0:0:0:FF02:0:0:0:1
↓
FF02:0:0:0:1

 さらに連続する0は :: に置き換え可能である。(→ゼロ圧縮 zero compression)

FF02:0:0:0:1
↓
FF02::1

 プレフィックス長は "/" の後に 0〜128で指定する。

3FFE:10A::/16

IPv6のアドレス付け方式

 IPv6は与えられたネットワーク上へのブロードキャスト用の特別アドレスを持っていない。 その代わりに、IPv6は次の3つの基本タイプを使う。


3ビットのプレフィックス

000 特殊なアドレス
001 経路集約型アドレス
010 未割り当て (was プロバイダ型アドレス)
011 未割り当て (was 地域型アドレス)
100 未割り当て
101 未割り当て
110 未割り当て
111 リンクローカル、サイトローカル、マルチキャスト

※ ブロードキャストは無くなった。


特別アドレス


Prev Chapter 7 -- MTU (Maximum Transmission Unit), Fragmentation
INDEX
Next Chapter 9 -- ICMP(internet control message protocol)