【IPv4 と IPv6】

IPv4 (Internet Protocol Version 4) は、現在主に使われているインターネット層のプロトコルです。
IPv4アドレスにおいては、32bit を 8bit ずつ 「・」 で4分割し、分割した数値を10進数で表記しています。



IPv4アドレスは 「32bit」 で構成されます。
すなわち、2の32乗のアドレス数を保有することになります。

実際の数値に置き換えると、「4,294,967,296」、約43億個となり、非常に大きな数のように思えます。
しかし、全世界で43億個と考えれば世界人口が70億人を突破している状況下では、単純に計算して1人に1個も割り当てられないことになります。


一方、IPv6アドレスは 「128bit」 で構成されます。
これは2の128乗のアドレス数を保有することになります。

IPv6アドレスは、128bit を 16bit ずつ 「:」 で8分割し、分割した数値を 「16進数」 で表記しています。



IPv6のアドレス数を実際の数値に置き換えると、「340,282,366,920,938,463,463,374,607,431,768,211,456」、約340澗 (かん) 個となります。

このほぼ無限とも言えるアドレス数の多さを利用して、家にある電化製品などにも固有のIPアドレスを割り振り、
ネットワークに参加させるなど活用に期待されています。

インターネットの急激な成長に伴い、IPv4 の 32bit アドレスは数に余裕がなくなってしまったため、現在 128bit のアドレスを持つ IPv6 への対応が進められています。
すでにほとんどのOS、インターネット事業者が IPv6 に対応していますが、IPv4 を延命する技術も登場してきており、まだ当分の間は併存が続くと見られています。


 
デュアルスタックホスト (dual stack host)

IPv4 と IPv6 ではアドレスもパケットも互換性がありません。
現在はさまざまな技術を利用して両者を併存させ、徐々に移行が進められています。

デュアルスタックというのは、2つのプロトコルを動作できるという意味です。
IPv4 と IPv6 の両方をサポートするホストをデュアルスタックホストと呼びます。

Windows では、Windows 2000 からオプションで IPv6 を使用することができます。
Windows Vista からは IPv6 が最初から搭載されデュアルスタックホストとして動作します。




(13) IPv6プロトコル

IP(Internet Protocol)については前に説明したとおり、インターネットの中心的なプロトコルだといえます。
インターネットで扱われるマルチメディア情報は、送信時に複数のパケットに分割され、IPによって経路の決定がなされます。
IPはまさに世界を取り巻いているといってもいいプロトコルであるわけです。

現在、インターネットではIPv4(Internet Protocol Version4)を用いています。
IPv4は、1970年代に考案されてこの仕様が広く公開されたことから、UNIXをはじめとして多くのOSなどで実装され、
1980年代に入り急速に普及することとなりました。
しかし、近年のインターネットの急激な普及から、IPv4をめぐって様々な問題が生じてきました。

たとえば、IPv4のIPアドレスは32ビットで構成されていますが、このままインターネットに接続される端末やサーバが増加し続けると、
32ビットではIPアドレスが足りなくなってしまうという危険性が出てきました。

インターネット上のグローバルなIPアドレスは、重複しないように1つ1つが異なるものですが、割り振るべきアドレスに余裕がなくなってきたわけです。
また、利用者が急増するとともに、伝送されるデータが文字だけでなくマルチメディアに対応した様々な情報となってきたため、
経路を通過するデータのトラフィックが増大しています。
これは、道路にたとえると大渋滞に陥りやすいという問題です。

そこで、この間題を根本的に解決するための策として、次世代のインターネットにも対応することができる新たなるプロトコルが
インターネット特別技術調査委員会(IETF:Internet Engineering TASK Force)などで協議されました。

そして、1994年に標準化がなされたプロトコルがIPv6(Internet Protocol Version 6)です。

IPv6のヘッダをIPv4のヘッダと比較してみると、IPv6ではフィールドの数が減り、とてもシンプルな構造となっているのがよくわかります。
また、IPアドレスが32ビットから128ビットに拡張されているのが大きな違いとなっています。
   


                                                

IPアドレスは単に拡張されただけではなく、IPv4で問題になっていたIPアドレスのクラス分けによるアドレスの無駄
(IPv4では、1つのネットワークに割り当てたホストアドレスを一部しか使用していない場合でも、他のネットワークで
その未使用分を使うことができません)を解消するため、クラスの概念を取り除いた連続的なアドレス空間となっています。
また、アドレスをエリアごと、つまり組織などに関連づけて割り振ることにより、効率的なルーティングを実現するよう配慮されています。

IPヘッダの次にはペイロード、つまりデータが続きます(ペイロードの長さはヘッダ内のペイロード長で管理されます)。
通常はこれにネットワーク層のすぐ上の層であるトランスポート層で付加されるTCPヘッダなどが続くことになりますが、
IPv6ではトランスポート層のプロトコルヘッダの前に、任意の数のIPv6拡張ヘッダを挿入することができることになっています。

拡張ヘッダには中継点オプションヘッダ、経路制御ヘッダ、断片ヘッダ、認証ヘッダ、暗号ペイロードヘッダ、
終点オプションヘッダの6つのヘッダが存在し、これらのヘッダを数珠つなぎに組み合わせることができます。
拡張ヘッダには、インターネット上で必要となる認証や暗号化などセキュリティ機能を持つものもありますが、
IPv6では、セキュリティ機能もサポートしています。
なお、次にくるヘッダがどのようなものであるのかは、ヘッダ内にある後続ヘッダIDによって管理されます。

さて、この新たなるプロトコル、IPv6の最大の問題は、現状のIPv4で世界的に普及しているインターネットを機能させたまま
移行させることができるかどうかにあります。
これについては、IPv6のパケットが既存のIPv4の経路に流れる際、ルーティング時にIPv4によってカプセリングすることにより共存が実現します。

つまりIPv6ヘッダとペイロードをIPv4の袋に入れて伝送するわけです。

IPv6は、一部基幹的なネットワークにおいて移行がスタートしており、IPv6を実装したOSやこれを用いたサーバ機、さらにはIPv6に対応したルータなどが登場しはじめています。
IPv6はすでにインターネットで活用されはじめています。


IPv6アドレスの表記
現在普及しているIPv4では、IPアドレスでは32ビットを8ビットごとにピリオド(.)で4つに区切り、これを10進数で表現しています。
これに対して、IPv6では128ビットのIPアドレスを16ビットごとにコロン(:)で8つに区切り16進数で表現します。

16ビットを16進数で表現するとそれぞれが4桁となりますが、上桁がゼロの場合は省略が可能である同時に、値自体が0の場合については、
その値も省略することができます。





IPv4ヘッダの情報

Version(4ビット)IPのバージョンを表します。

IHL(Internet Header Length:インターネットヘッダ長)(4ビット)
IPヘッダーの長さを表しています。IHLでどこまでがIPヘッダでどこからがデータなのかが分かります。

TOS(Type of Service)(8ビット)
IPパケットの優先度などパケットの品 質を決める情報が入ります。

Total Length(16ビット)
IPヘッダとデータを含めたパケット全体の長さを表します。

Identification(16ビット)
大きなデータを運ぶときは、複数のIPパケットに分けてデータを送信します。
その時に、分割したデータなのか、全く別のデータのパケットなのかを識別するために使用できます。

Flags(3ビット)
IPパケットの分割を制御する時に使用します。

Flagment Offset(13ビット)
分割されたパケットが、元のデータのどこに位置しているかを表します。

TTL(Time to Live)(8ビット)
パケットが通過可能なルータの数を表します。
ルータを経由するたびに1づつ減っていき。0になった時点でこのパケットは破棄されます。

Protcol(8ビット)
IPの上位プロトコルを表します。
主要なプロトコルは以下があります。

ICMP (Internet Control Message Protocol)
TCP (Transmission Control Protocol)
UDP (User Datagram Protocol)

Header Checksum(16ビット)
IPヘッダのチェックサム。IPパケットの伝送エラーがないかチェックするためにあります。
IPヘッダ内のTTL値はルータを経由するたびに変わるため、各ルータでは転送する前にヘッダチェックサムの再計算を行っています。

Source Address(32ビット)
送信元のIPアドレスがセットされています。

Destination Address(32ビット)
宛先のIPアドレスがセットされています。

Options(可変)
IPパケットに付加するオプションを設定しています。





Home Page