IPv6 移行の現状－平成 22 年度東海・北陸地区国立大学法人等技術職員合同研修(情報処理コース)を受講して池田将典 A)、山田一成 A)、田島尚徳 A) 、佐野寿久 B)○A)

共通基盤技術支援室 情報通信技術系B)

工学系技術支援室 情報通信技術系

概要
2011 年 2 月 3 日、全世界のアドレス資源の管理調整機能 IANA (Internet Assigned Numbers Authority) が管理する IPv4 アドレスが枯渇した。世界 5 地域にある地域インターネットレジストリ RIR (Regional InternetRegistry) の管理する IPv4 アドレスも、8 月頃には枯渇すると予想されている。
本稿では、平成 22 年 9 月 1 日～3 日に開催された、平成 22 年度東海・北陸地区国立大学法人等技術職員合同研修(情報処理コース)を受講し、IPv6 誕生の背景と IPv4 枯渇問題について学んだ事を踏まえ、IPv6 の設計仕様とその利用の現状、及び IPv4 枯渇後の対応状況について報告する。

1

IPv4 枯渇問題

IPv4 のプロトコルで通信を行うには、通信を行う送信元と受信先が、一意の IPv4 の IP アドレスを割り当てられている事が前提となる。このため、IPv4 アドレスが完全に枯渇し、割り当てが無くなった場合、新規のユーザのインターネット接続や新規サーバの設置が不可能となる。
限定された通信だけを行なうのであれば、ローカルな IP アドレスと、グローバルな IP アドレスを使い分ける IP マスカレード(NAT,NAPT) 等の技術によって一時的に回避する事が可能である。しかし、これらはインターネット上のサービスを指定するポート番号を他の目的に流用するやり方であり、根本的な解決方法ではない。NAPT はネットワーク上を流れるパケットを書き換える行為であり、セキュリティ上も問題がある。また、ネットワーク上で、IP アドレスによって通信相手である相手のノードを一意に指定出来ない、という本質的な問題は依然として残る。
IPv4 枯渇問題はインターネットの誕生当初から潜在的に存在していた。 IPv4 は 32 ビットのアドレス空間(2^32=4,294,967,296)で管理されるためである。設計当初は深刻な問題とは思われていなかったこの問題は 、1990 年代末から始まったインターネット人口の爆発的増加により、表面化した。割り当てが完全に尽き、自身が現在 IPv4 でアドレスを持っていても、接続する相手が IPv4 のアドレスを持っていない場合、接続出来ない。
インターネット上で認識出来ないためである。こういった問題に対応するために、IPv6 への移行が必要となる。

2

IPv6 の基礎知識

2.1

IPv6 の特徴

IPv4 アドレスは 32 ビットを使用し、最大 43 億( 4,294,967,296 )個のアドレッシングが行われるのに対してIPv6 アドレスは 128 ビットを使用し、最大 340 澗[かん]( 340,282,366,920,938,463,463,374,607,431,768,211,456 )個のアドレッシングが可能となる。これは事実上無限と言えるアドレス数を意味し、枯渇問題も無くなる。これによりアドレス不足による IP マスカレード実装の必要が無くなり全ノードがグローバルな接続性を持てる事から、IP 電話等 P2P アプリケーションなどの実装が容易となる。

2.2

IPv6 ヘッダの特徴

IPv6 ヘッダは 40 オクテット、IPv4 ヘッダの 20 オクテットの倍となっている。その内 32 オクテットは IPv6アドレスであり、それ以外の部分はわずか 8 オクテットとなる。IPv4 ヘッダは 20 オクテットの内 8 オクテッ
トがアドレスであり、それ以外は 12 オクテットである。IPv6 ヘッダの方が、よりシンプルになっている事が判る。ヘッダに含まれる項目も、IPv4 の 12 個から、IPv6 では 7 個に減っている事からも見て取れる。また、IPv4 ヘッダは可変長(20 オクテットに任意長のオプション)だったが、IPv6 では 40 オクテットの固定長ヘッダとなっている。固定長のヘッダにはルータに処理負荷がかからないというメリットがある。

図 1. IPv4 ヘッダ構造
2.3

図 2.IPv6 ヘッダ構造

IPv6 アドレスの表記法

IPv6 アドレスは、128 ビットのアドレスを 16 ビット毎にコロン(：)で区切り、16 進数で表記する。その為 、IPv6 アドレスは 32 桁 8 フィールドの長いアドレスになるため、省略化表記のルールが存在する。
2001:0db8:beef:cafe:0000:0000:0000:1234

例)

省略表記 1：各ブロック先頭の連続する「0」は省略可能
2001:db8:beef:cafe:0:0:0:1234
証約表記 2：連続した「0」は 1 回に限り「::」に省略可能
2001:db8:beef:cafe::1234
2.4

IPv6 アドレスの種類

IPv6 には、以下のような種類のアドレスがある。
•ユニキャストアドレス

１対１

通信

ネットワークインターフェース毎に設定されるアドレス。一つのコンピュータに複数の実装されている場合は、インタフェースの数だけユニキャストアドレスを持つ事になる。
•マルチキャストアドレス

１対多通信

グループを識別するアドレスであり、複数のノードを識別する。IPv6 にはブロードキャストアドレスは存在しないが、必要な場合は、オールノードマルチキャストアドレス(ff02::1)を使う。
•エニーキャストアドレス

１対１ of 多通信

一つのアドレスが複数のノードに割り当てられているという点ではマルチキャストと似ているが、エニーキャストの場合は「そこに属しているノードの中で、ネットワーク上で一番近いノードのどれか一つのみに配送される」という点が異なる。返信にはユニキャストで指定して送信し、ルータはエニーキャストアドレスが送信元のパケットを捨てる。
パケットの到達範囲(スコープ)によって、上記のアドレスそれぞれに対しリンクローカルスコープとグローバルスコープのアドレスが存在する。
•リンクローカルアドレス
同一リンク(セグメント)内で一意なアドレス。ルータを超えた通信は不可。近隣者発見プロトコル
NDP (Neighbor Discovery Protocol)などの通信で利用される。

•

グローバルアドレス
全 IPv6 で一意なアドレス。

2.5

予約済 IPv6 アドレス例•

0:0:0:0:0:0:0:0
未指定アドレス（Unspecified Address）として定義されている。0 を省略して 0::0 や :: とも表記される。このアドレスはノードにまだアドレスが割り当てられていない事を意味する。ノードの初期化段階において、アドレスの重複をチェックする場合などに送信元アドレスとして使用される。

•0:0:0:0:0:0:0:1
ループバックアドレスとして定義されている。0 を省略して 0::1 や ::1 とも表記される。IPv4 では127.0.0.0/8 の範囲の任意のアドレスをループバックアドレスとして使用出来るが、IPv6 ではこのアドレスに限られる。ループバックアドレスであるため、このアドレスをインターフェイスに割り当てる事は出来ない。

•2001:db8::/32
文書作成用アドレス空間として定義されており、IPv4 の 192.0.2.0/24 に該当する。マニュアルなどの文書中のみで利用する事を想定したアドレス空間として予約されている。

•

ff01:0:0:0:0:0:0:1 ノードローカル・全ノードアドレス•

ff02:0:0:0:0:0:0:1 リンクローカル・全ノードアドレス
全ノードアドレスは、指定されたスコープ内すべての IPv6 ノードの集合体を示すアドレス。このアドレスを終点アドレスに持つパケットは指定スコープ内すべてのノードで受信される。

•

ff01:0:0:0:0:0:0:2 ノードローカル・全ルータアドレス•

ff02:0:0:0:0:0:0:2 リンクローカル・全ルータアドレス•

ff05:0:0:0:0:0:0:2 サイトローカル・全ルータアドレス
全ルータアドレスは、指定されたスコープ内すべての IPv6 ルータの集合体を示すアドレス。このアドレスを終点アドレスに持つパケットは指定スコープ内すべてのルータで受信される。

2.6

自動アドレス設定

IPv6 では DHCP を用いなくともルータさえあればアドレスの自動設定が可能となっている。
IPv6 ノードのネットワークインタフェースには、必ずそのリンクだけに到達性のあるリンクローカルアドレスが付く。これは通常 fe80:: というプリフィックスと、MAC アドレスより生成されたインタフェース ID から生成される。また、そのリンク内で一意であれば手動で設定しても構わない。最終的なアドレスの一意性は、重複アドレス検出 DAD (Duplicate Address Detection )に基づいて解決される。
ルータは自分の接続しているネットワークに対し、定期的にあるいは要請に基づいて、そのネットワークに関する情報、ルータ広告 RA (Router advertisement) を送信している。この情報に含まれるプリフィックス情報

と一意のインタフェース ID を用いて、IPv6 ホストはグローバルアドレスを生成する。同時に、その IPv6 ホス
トは受信した RA を送信したルータをデフォルト経路に設定する事で、グローバル IPv6 ネットワークへの接続性も確保出来る。しかし、この仕組みでは名前解決のための DNS サーバのアドレスを取得する事は出来ないため、DHCPv6 など別の仕組みも必要となる。
2.7

DHCPv6 (Dynamic Host Configuration Protocol for IPv6)

管理サーバによりアドレスを付与する技術。IPv6 においては、先の自動アドレス設定機能により、DHCP を用いなくともインタフェースにアドレスを与える事が出来る。しかし、インタフェースに DNS サーバのアドレスなどを与える事が必要な場合もある。DHCPv6 を使用する事により、このような場合に DHCPv4 と同様にDHCP サーバからインタフェースにアドレスを配布する事が出来る。また、自動アドレス設定とは違い、IP アドレスだけで無く DNS サーバ、ドメイン名や他のサーバのアドレスを合わせて配布する事が出来る。
DHCPv6 と DHCPv4 との間に互換性は無い。DHCPv4 においては DHCP を使用して設定するかどうかはホストが決定するが、DHCPv6 においてはルータ広告のオプションによって通知される。一つのインタフェースに異なる情報源から異なる設定情報が届く事も有りえる。

3

IPv6 への移行技術

3.1

デュアルスタック

IPv4 と IPv6 とを共存させて用いるための技術。IPv6 へ移行するための過渡的な技術の一つである。IPv4 とIPv6 とは異なったプロトコルであるため、両方を同時に使用するためにはトランスレータを用意するか、IPv6パケットをカプセル化するなどの方法を採る必要がある。デュアルスタックは、そうした手間を払う事なく、一つのルータやマシンが IPv4 と IPv6 のアドレスをそれぞれ持って両プロトコルを混在させる事が 出来る点が特徴となっている。現在の IPv6 対応機器の大多数は IPv4 にも対応しており、デュアルスタックであると言える。
3.2

トンネリングあるネットワークの中にパケットをカプセル化して通す技術がトンネリングである。IPv4 と IPv6 の間でもトンネリング技術を用いる事により、相互にパケットを通す事が可能となる。現在のインターネットは IPv4で構築されているので、その中を IPv6 パケットを通すために IPv6 over IPv4 トンネリング技術を用いるケースが多い。現在、多くの ISP が提供している IPv6 接続サービスの 1 つが、この形態である。なお、パケットのカプセル化／デカプセル化はルータで行う場合が多い。デュアルスタックとトンネリングを組み合わせる事により、現在のインターネット上で IPv6 をスムーズに共存させる事が可能になる。

図 3. IPv6 over IPv4 トンネリング

3.3

自動設定トンネリング

設定の不要な IPv6 over IPv4 トンネリングの方式。手動トンネリングとは違い、宛先 IPv4 アドレスを明示的に定義する必要が無い。IPv6 アドレスの中には宛先 IPv4 アドレスが埋め込まれているため可能となる。
主な手法は以下の通り。
•6to4
トンネル接続と IPv6 アドレス割り当てを同時に実現。IPv4 グローバルアドレスを利用した、IPv6アドレス。

図 4. 6to4 端末と IPv6 端末の通信•

6rd (IPv6 Rapid Deployment)
6to4 技術を利用した ISP 等でのトンネル接続。ISP が持つ IPv6 プレフィックスを利用可能。ユーザ側に設置した 6rd 対応のネットワーク機器 CPE (Customer Premises Equipment) と、ISP のネットワークに設置した 6rd 対応リレールータ (6rd Border Relay) の間にトンネルを形成し、IPv6 パケットを転送する。エンドユーザ側と、アクセス先のサーバなどが置いてあるネットワークは IPv6 に対応しているが、ISP 側には IPv4 ネットワークが残っている環境を想定した技術である。実装が比較的容易でコスト負担が小さいと言われる。

•ISATAP (Intra-Site Automatic Tunnel Addressing Protocol)
イントラネット内でのトンネリング技術。プレフィックスに制限は無い。孤立した IPv6/IPv4 デュ
アルスタックホスト－デフォルトゲートウェイが IPv6 には対応していないサブネットに属するデュアルスタックホストが、IPv6 インターネットに接続するための手法。6to4 と異なり、IPv6 アドレスに埋め込む IPv4 アドレスがプライベートアドレスであっても、上位 64 ビットのプレフィックスがグローバルなプレフィックスであれば、その ISATAP アドレスはグローバル IPv6 アドレスとなる。
従って ISATAP は、プライベートアドレスが使われるイントラネットにおいて IPv6 を導入する際に有用な手段となる。なお、ISATAP ホストの IPv4 アドレスが固定でない場合は、生成される ISATAPアドレスも固定ではなくなる。

•Teredo
NAT トラバーサルを IPv6 で実現する技術。1 つ以上の IPv4 NAT にまたがって存在するホスト間

で自動 IPv6 トンネリングを可能にする。Teredo ホストからの IPv6 トラフィックは IPv4 UDP メッセージとして送信されるため、NAT 間を通過出来る。

図 5. Teredo 端末と IPv6 端末の通信
3.4

トランスレータ

通信を仲介する翻訳機。NAT と同様の課題を持っている。主な方式は以下の通り。
•ヘッダ変換方式
IPv4 ヘッダと IPv6 ヘッダの相互変換を実現する。IPv4 での NAT に似た技術。

•TCP リレー方式
トランスポート層(TCP セッション)での中継方式。ヘッダ変換方式よりも処理が大きいが、制約は少ない。

•アプリケーションレベルゲートウェイ方式
アプリケーションレベル－ソフトウェアによる中継方式。処理のオーバーヘッドは一番大きくアプリケーション毎の対応が必要になるが、相互接続性は完全に確立出来る。

図 6. 変換アドレス空間からみた実現性と利用価値

4IPv6 サービスの現状

2011 年 2 月現在の主立った ITS 企業,ISP 各社の IPv6 サービスを記載する。
4.1

トンネルブローカ IPv6 接続サービス

トンネルブローカは、IPv6 over IPv4 トンネルを動かすための、トンネルを利用する端末とサーバの間でのトンネルの設定を、自動化するためのシステム。クライアント端末からトンネル開設要求を受け取ると、トンネルサーバに対して、クライアント端末に向けて IPv6 over IPv4 トンネルを張るように指示する。同時に、クライアント端末に対してもトンネルサーバに向けて IPv6 over IPv4 トンネルを張るように指示する。クライアン
ト端末とトンネルサーバの IPv6 over IPv4 トンネルの設定を仲介することにより、クライアント端末を自動的に IPVv6 ネットワークへ接続させる。具体的なプロトコルメッセージは決まっていないが、現在使われている実装プロトコルは下記の２つである。
•Feel6http://start.feel6.jp/

FreeBit 株式会社による無料の IPv6 接続サービス。接続プロトコルは、DTCP (Digital Transmission
Content Protection) を用いる。
•Feenet6

http://gogonet.gogo6.com/page/freenet6-ipv6-services

Hexago 社による無料の IPv6 接続サービス。接続プロトコルは、TSP (Tunnel Setup Protocol) を用いる。DTCP よりも拡張性に優れている。
4.2

PPP を利用した IPv6 トンネル接続サービス•OCN IPv6

http://www.ocn.ne.jp/ipv6/service/index.html

NTT コミュニケーションズ株式会社の商用 IPv6 接続サービス。ISP 接続契約に 300 円追加することで、利用可能。接続プロトコルは、L2TP (Layer 2 Tunneling Protocol) を用いる。専用接続プログラムを提供しており、物理 I/F への RA を強制排除し、マルチプレフィックス－1 セグメントに複数プレフィックスが存在し、端末も複数アドレスを扱う状態を回避している。固定プレフィックス/64 と非固定プレフィックス/64 を配布。
•IIJ 仮想 IPv6 接続サービス

https://www.iij4u.or.jp/guide/ipv6/v6_access/

株式会社インターネットイニシアティブの IPv6 接続サービス。ISP 接続契約の基本機能として提供。接続プロトコルは、PPTP (Point-to-Point Tunneling Protocol) を用いる。非固定プレフィックス/64を配布。
4.3

6rd によるトンネル接続サービス•

Yahoo!BB IPv6

https://ybb.softbank.jp/ipv6/

ソフトバンク BB 株式会社の IPv6 接続サービス。ISP 接続契約のみで利用可能。接続プロトコルは、6rd を用いる。リレールータの IPv4 アドレスや利用プレフィックスの配布方法は独自仕様。ネットワーク機器 CPE を配布するサービス形態だからこそ取れる手法である。6rd 接続認証は IPv4 アドレスを元に制御する。フレッツ網の IPv6 とのマルチプレフィックスはポート分割により回避している 。
/56 のプレフィックスを配布。
4.4

フレッツ・光サービス

http://www.flets.com/index.html , http://flets-w.com/index.html

NTT 東日本株式会社,NTT 西日本株式会社によるサービス。IPv6 を用いてネットワークが構築されている。ISP 事業では無いので、インターネットアクセスは不可。仕様上、複数の IPv6 アドレスが設定された場合に、端末においてアドレスの使い分けのポリシー設定が出来ない。ISP がフレッツ網を利用して IPv6 接続サービスを実施する際に、マルチプレフィックス問題が発生してしまう。

5

今後の予想夏頃に予想される、RIR での IPv4 アドレス在庫枯渇は世界 5 カ所で別々に発生するが、日本を含む APNICエリアは、中国,インドなどのインターネット人口の増加に伴ない、おそらく最も早く完全に枯渇する。完全枯
渇後は、未使用領域の再利用と、IPv6 移行が同時に進むものと思われる。ただし、インターネット環境の IPv6への完全な移行には、10 年 20 年単位での試行錯誤と移行期間が掛かるものと予想される。日本を含め、有名ITS 企業や基幹回線網は米国,EU などに集中しており、既に IPv4 網の整備が進んでしまっているため、IPv6 の必要性が見出しにくい。また、未だに個人環境の 50%以上を占める WindowsXP は、標準の状態では、IPv6 サー
ビスが動いていない。ソフトウェアについても、大多数は、IPv4 環境しか考慮していない。個人の OS 移行や、ネットワーク機器の入れ替えのコスト、ITS 各社のビジネススタンス、等々問題は山積している。
当面の対応としては、IPv4 環境を基本に、IPv6 環境もサポートするという、現在のサービス形態が続くものと思われる。本格的に危機感が表面化するのは、新興 ITS 企業が IPv4 アドレスを取れない、という状態に陥ってからかと愚考する。今後少なくとも十数年は、IPv4 と IPv6 が平行して存在する、デュアルスタック環境を意識して行く必要が有る。

参考文献
(1)

北口 善明,IPv6 を学ぼう ～基礎編～,平成 22 年度東海・北陸地区国立大学法人等技術職員合同研修(情報処理コース)配布資料(2)

DDTS,DNT Info IPv6 規格の変遷,DNT テレコム,2010 年 12 月 31 初版第１刷発行(3)

あきみち,Geek なぺーじ IPv4 と IPv6 の違い,
http://www.geekpage.jp/blog/?id=2011/1/31/1(4)

あきみち,Geek なぺーじ IPv4 アドレス枯渇。その意味と恐らくこれから起きること,
http://www.geekpage.jp/blog/?id=2011/2/1/1(5)

Cool,ネットワークエンジニアとして IPv6,
http://www.infraexpert.com/study/ipv6.htm(6)Brien Posey,ZDNet IPv6 アドレスについて知っておくべき 10 のこと,
http://japan.zdnet.com/sp/feature/07tenthings/story/0,3800082984,20423460,00.htm(7)

遠藤 哲,ASCII.jp：明日にも枯渇？IPv4 がなくなったらどうなる？,
http://ascii.jp/elem/000/000/585/585075/(8)

大浦哲生,＠IT IPv4→IPv6 への移行技術を知る,
http://www.atmarkit.co.jp/fnetwork/tokusyuu/09v4tov6/v4tov6-01.html(9)IPv4 アドレス枯渇対応タスクフォース IPv6 サービスリスト,
http://www.kokatsu.jp/blog/ipv4/data/ipv6service-list.html