次世代のインターネットプロトコル IPv6〜実際に使ってみよう〜
大谷 誠∗
工学系研究科システム生産科学専攻

1

はじめに最近、インターネット関連のホームページや新聞などの記事に、「IPv6」という言葉を見かけることが多くなりました。この「IPv6」という言葉は、2000 年秋、当時の総理が所信表明演説で「先端インターネット技術等の研究開発、IP バージョン 6 などによるグローバルインターネットの課題解決への積極参加など、インターネットの発展に対する大きな国際的貢献を目指します。」と述べたことによって、TV などにも取り上げられるようになってきました。
さて、この最近話題になっている「IPv6」とは一体何なのでしょうか？ この IPv6 は、簡単いえば、“インターネット上で、データを送受信する際に必要な、情報などを管理するための約束事 (プロトコル) の第 6 番目のパージョン” といったところです。
現在使用されているインターネットは、バージョン 4 (IPv4) と呼ばれています。この IPv4は、近年の急速なインターネットの普及によって、いくつかの問題点が表面化してきました。
そこで提案されたのが IPv6 なのです。つまりIPv6 は、現在のインターネットの問題点を改善し、また新たなサービスを提供することのできる、次世代のインターネットの仕組みなのです。(ちなみにバージョン 5 (IPv5) は、ST-II(Internet Stream Protocol version 2) と呼ばれるプロトコルのために割り当てられていましたが、一般に普及しませんでした。)
それでは、具体的に IPv4 と IPv6 とではどのような違いがあるのでしょうか？
∗otani@ai.is.saga-u.ac.jp

そこで本稿では、IPv6 の利点について紹介するとともに、Windows や FreeBSD などのOS で、実際に IPv6 を利用するための方法を紹介します。

2

IPv6 の特徴

次世代のインターネットプロトコルである
IPv6 は、先に述べたように、現在のインターネットの抱える問題点を解決するだけでなく、今まで実現することのできなかった、新たなサービスを提供することが可能になります。こ
こでは、IPv6 の特徴について紹介します。

2.1

膨大なアドレス数

まず IPv6 の最大の特徴は、膨大なアドレス数が扱えるということです。
現在のインターネットのプロトコルである
IPv4 は、1975 年頃の技術をもとに設計されました。設計された当時、現在のようにインターネットがこれほど普及するとは、だれも想像していませんでした。

IPv4 では、インターネット上でコンピュータなどの通信機器を識別するために使用するIP アドレスの数を 232 個 (約 43 億個) とし、各通信機器に割り当てることにしました。設計
当時はこれで十分でしたが、ここ数年でインターネットが急速に普及し、CATV や、ADSLなどによって、一般家庭のコンピュータが、インターネットに常時接続されていることが特別なことではなくなりました。また、携帯電話のような機器もインターネットに接続するようになっています。よって、世界人口よりも少ない約 43 億のアドレス数では、足りなくなってきているのです。
そこで、IPv6 では、アドレス数をなんと、2128 個 (約 340 澗個) としました。約 340 澗個と言われても、見慣れない単位なのでピンときませんが、約 340 澗 = 3.4 × 1038 ですので、世界人口を 60 億人とすると、一人あたり、5.7 × 1028 個という膨大なアドレスを使用することが可能になります。これだけあれば将来、あらゆるものをインターネットに接続しようとしても、問題はないでしょう。

2.2

エンド・ツー・エンドの通信が可能

IPv6 は膨大なアドレス数がありますので、インターネットに接続したい物が増えたとしても、それらすべてに、固定の IP アドレスを割り当てることが可能になります。これによって、たとえば末端の通信機器で直接メールを送ったり、動画を配送したりすることも容易になり、いわゆるエンド・ツー・エンドの通信が可能になります。現在でも携帯電話同士でメールを送ったりすることは可能ですが、これは、メールのサービスを提供するサーバなどを経由して、メールの送受信が行われています。例えばこのサーバが大量のメールを扱おうとすると、メールの送信が遅れたり、または届かなかったりといった現象が起きることがあります。しかし、IPv6 では通信機器同士で直接配送することができるので、メールの遅れなどを軽減することも可能です。
また、IPv4 では、インターネットに繋がっている機器が必ずしも固有の IP アドレスを持っている訳ではありません。たとえばダイアルアップ接続でインターネットに接続する場合、接続している時だけ IP アドレスが割り当てられます。回線を切断されると、割り当てられていた IP アドレスを他のユーザのために開放します。よって、同じ IP アドレスを複数の通信機器が使用する場合があるため、IPv4 では、IP アドレスによって固有の通信機器を識別するのは大変困難です。

その他に、IPv4 では盛んにプライベートアドレスというものが使用されています。プラ
イベートアドレスとは、大学内や、社内のみといったようにある組織内でのみ使用可能なIP アドレスのことです。プライベートアドレ
スが振られている通信機器がインターネットに接続する場合には、インターネット上で使用可能なアドレス (グローバルアドレス) に変換する必要があります。プライベートアドレ
スが割り振られた通信機器には、外部の組織から直接アクセスすることができません。これは、セキュリティ対策の一つの方法ですが、反面、エンド・ツー・エンドの通信が不可能になってしまう欠点があります。IPv6 では、エンド・ツー・エンドの通信を提供するとともに、セキュリティもあわせて考慮されており、IPsec と呼ばれるしくみによって、認証や通信内容を暗号化することに、安全な通信を提供することができます。さらに IPv6 では、動画配送を円滑に行うための仕組みや、効率良く通信が行うことを可能にするアドレス形態の採用、ネットワーク設定の自動化など、様々な機能が盛り込まれています。

2.3

新たなサービスの登場

先にも述べたように、IPv6 ではいろいろな物にアドレスを割り当て、インターネットに接続することができます。これによって、今までとは違った新たなサービスを提供することが可能になります。たとえば、エアコンや、ビデオなどを携帯電話をコントローラにして外出先からコントロールしたり、食料品にアドレスを振ることによって、賞味期限の管理を冷蔵庫などが行ったりすることも可能になります。
また自動車の速度センサや、位置情報などの様々なセンサ、ワイパー、ドアなどにアドレスを振り、これらから情報を集めて渋滞情報を取得したり、ワイパーの動作状態から、気象情報を取得するなどといったことも可能になります。このようなことは、IPv6 によって実現可能な世界のほんの一部にすぎません。

3

実際に使ってみよう

このように IPv6 は、様々な特徴を持っています。しかし実際に使ってみないとなかなか理解はできないと思います。ここでは、IPv6を実際に利用するための方法を紹介します。
まず IPv6 を利用するためには、以下の 3 つが IPv6 に対応している必要があります。

• OS(オペレーティングシステム)

図 1: IPv6 Kit の解凍• ネットワーク• アプリケーション

3.1

OS を IPv6 対応にする

まず OS についてですが、IPv6 を利用するためには、OS 自体が IPv6 に対応している必要があります。それでは、いくつかの OS をIPv6 に対応させる方法を説明します。

3.1.1

2 のようなウィンドウが表示されれば解凍終了ですので、“Close” をクリックしてください。

Windows2000

Windows2000 は標準の状態では、IPv6 に対応していません。ですが、Microsoft から Windows2000 を IPv6 に対応させるためのキット(IPv6 Kit) がプレビュー版ながら公開されています。場所は、

図 2: IPv6 Kit の解凍終了の確認

すると、

C:\IPv6Kitに IPv6 Kit が解凍されています (図 3)。

http://msdn.microsoft.com/downloads/sdks/platform/tpipv6/download.aspです。ここに、IPv6 Kit の使用許諾が英語で書かれているので、問題がなければ、下の方にある、“I Agree” をクリックしてください。
すると、IPv6 Kit(tpipv6-001205.exe) のダウンロードが始まります。ダウンロードが終わったら、そのファイルをダブルクリックしてください。すると図 1 のようなウィンドウが表示されます。
ここで、このウィンドウの “Unzip” をクリックすると IPv6 Kit の解凍 (IPv6 のインストー
ルに必要なファイルの展開) が始まります。図図 3: IPv6 Kit フォルダ

いよいよインストール作業です。ここで注意しておかなければいけないことがあります。
この IPv6 キットは、Windows2000 の Service
Pack 1 がインストールされていないとインストールできませんので、事前に Service Pack1 をインストールしておいてください。またService Pack 2 をインストールしている人は、インストール方法が異なります。これについては後ほど説明します。
それでは、図 3 の setup.exe をダブルクリックしてみてください。すると IPv6 Kit のインストールが始まります。図 4 が表示されるとインストール完了です。“OK” をクリックすると OS の再起動が始まります。

まります。後は、Service Pack 1 の場合と同様です。
最後に、IPv6 を有効にする作業が残っています。Windows が再起動したら、コントロー
ルパネルの “ネットワークとダイアルアップ接続” をダブルクリックしてください (図 5)。

図 5: ネットワークとダイアルアップ接続

図 4: IPv6 Kit インストール終了の確認

Service Pack 2 をインストールをしている
場合は、setup.exe をダブルクリックせずに、コマンドプロンプトからここで、通常使用している接続 (例:ローカルエリア接続) を右クリックして、プロパティを選択してください。すると図 6 のようなウィンドウが表示されます。

C:\setup.exe -xと実行すると、解凍先を聞いてきますので、解凍先のフォルダ (例: C:\IPv6Kit\Files) を指定してください。次に解凍先のフォルダにできた、Hotﬁx.inf というファイルをメモ帳などで開いてください。そしてNTServicePackVersion=256という行を、

NTServicePackVersion=512に変更し、保存してください。後は、Hotﬁx.exeをダブルクリックをするとインストールが始

図 6: 接続のプロパティ

このウィンドウで、“インストール” をクリックすると、図 7 のようなウィンドウが表示されます。

図 7: ネットワークコンポーネントの種類と選択

ここで、“プロトコル” をクリックし、“追加”をダブルクリックすると、図 8 のようなウィンドウが表示されます。

図 9: 接続のプロパティ(IPv6 の追加)

まずコマンドプロンプトを起動してください。そこで、ipv6 installと入力します。そして、

Succeeded.

図 8: ネットワークプロトコルの選択

こ の ウ イ ン ド ウ に 表 示 さ れ て い る “Microsoft IPv6 Protocol” をクリックし、“OK”をクリックすると、図 9 のように、“MicrosoftIPv6 Protocol” が接続のプロパティに追加されています。
これで、IPv6 の設定が完了しました。

3.1.2

Windoow XP

Windows XP は標準で IPv6 をサポートしています。しかし、IPv6 が利用できる状態になっていません。そこで、手動で IPv6 を有効にする必要があります。と表示されれば終了です。Windows XP はこれだけの作業で終了です。ただし、XP は 2000の場合と異なり、接続のプロパティのところに“Microsoft IPv6 Protocol” などと表示されませんが、コマンドプロンプトに、ipv6 ifと入力することによって、アドレスなどの情報を確認することができます。

3.1.3

FreeBSDFreeBSD は、4.0 以降のバージョンで標準にIPv6 をサポートしています。FreeBSD4.0 より前のバージョンでは、IPv6 をサポートしていません。しかし KAME Project というところ

から、IPv6 に対応するためのコードが公開されています。URL は、

http://www.kame.net/です。しかし、IPv6 の最新機能が扱えません
し、セキュリティ的にもあまりおすすめできませんので、特に理由のない限り最新の物を使用するようにしてください。

IPv6 に対応しているバージョンを使用している場合、/etc/rc.confというファイルに、ipv6 enable=”YES”と書いてあれば、IPv6 を利用することができます。

3.1.4

Linux

Linux のカーネルは、IPv6 をサポートしています。ですが、カーネルによっては、IPv6の仕様が標準から外れたものとなっていたり、ディストリビューションの違いによっては標準で利用できなかったりと様々です。これについては各ディストリビューションのホームページなどで確認してください。
また、USAGI プロジェクトというところから、最新の IPv6 の機能を満たしたコードが公開されていますので、これを使用するのも良いでしょう。URL は、

http://www.linux-ipv6.org/です。インストールの方法は、ディストリビ
ューションによって若干異なるため、ここでは取り上げませんが、上記のホームページなどで公開されていますので、参考にしてインストールしてみてください。Linux を一通り扱える方なら簡単にインストールすることができると思います。

3.1.5

その他の OSその他の OS についてですが、Windows はMicrosoft が NT 系の OS しか IPv6 をサポートしていません。しかし以下の URL で、

http://www.hitachi.co.jp/Prod/comp/network/pexv6-j.htm
Windows 95/98 でも動作する、Toolnet6 と呼ばれるソフトウエアを公開していますので、95/98 では使用できるかもしれません。
また、UNIX 系の OS であれば、最新のバージョンでは、ほとんど IPv6 に標準で対応しています。UNIX のなかでも BSD 系の OS であれば、先程も述べた KAME Project から最新のソフトウエアなども公開されています。またSolaris などのベンダー系の UNIX も IPv6 に対応しています。詳しくは各 OS のホームペー
ジをご覧ください。

3.2

IPv6 でインターネットを利用する

上記の方法で OS を IPv6 対応にできても、これだけは、IPv6 を使ってインターネットを利用することができません。実際に IPv6 を利用するためには、その他にネットワークが IPv6に対応していること、および使用するアプリケーションが IPv6 に対応している必要があります。
最初にも述べたように現在のインターネッ
トでは IPv4 が標準で、次世代のインターネットである IPv6 をサポートしているプロバイ
ダや、組織はまだまだ数少ないのが現状です。
よって OS が IPv6 をサポートしていても、それを利用するネットワークが IPv6 をサポートしていなければ、IPv6 を使ってインターネットを利用することができません。ですが日本は、総理の所信表明にみられるように、IPv6の普及を積極的に進めています。よって急速に IPv6 に取り組むプロバイダが増えているので、自分が加入しているプロバイダが IPv6 のサービスを行っていれば、IPv6 を利用してインターネットを利用することができます。あとは、IPv6 対応のアプリケーションを利用するだけです。

ると Freenet6 のソフトウエア (freenet6-bin0.8.zip) のダウンロードが始まります。ダウンロードされるファイルは、ZIP 形式の圧縮ファイルですので、そのファイルを適当な場所(例:c:\freenet6) に解凍してください (図 10)。

もしプロバイダが IPv6 に対応していない場
合、IPv4 を利用して IPv6 のネットワークに接続する方法があります。具体的には、IPv4 のインターネット上に仮想的な IPv6 ネットワークを作成するという方法です。ただしこの方法は、コンピュータに割り当てられている IPv4アドレスがプライベートアドレスの場合は利用することができません。
以下では、この仮想的な IPv6 ネットワークの利用法について、いくつか紹介します。

3.2.1

Freenet6

Freenet6 は、フリーで仮想的な IPv6 ネットワークを提供してくれる方法です。URL は、
http://www.freenet6.net/です。この Freenet6 のホームページの中で、いくつかの接続方法が紹介されていますが、実際に筆者が、試みた方法を紹介します。

図 10: Freenet6 ソフトウエアの解凍

次に、Freenet6 を使用するためのアカウン
トを取得する必要があります。

http://www.freenet6.net/の下の方に、3. Create your userid
Windows
まずは Windows による方法です。上記のURL を開くと、Freenet6 に関する内容が書かれていると思いますが、下の方に、

2. Install the Freenet6’s client and conﬁgure
tspc.confと 書 か れ た 行 が あ る と 思 い ま す。こ こ の“Freenet6’s client” をクリックします。
すると、Windows 用の Binary code というところがあるので、そこをクリックするとFreenet6 のソフトウエアの利用承諾が英語で書かれているので、問題なければ、“YES”を選択し、“submit Response” をクリックすと書かれた行があると思いますので、“userid”をクリックしてください。するとユーザ登録のページに移動しますので、そのページに従って、フォームの部分に適当なユーザ ID と、メールアドレスを入力してください。ユーザ ID の部分は、他の人が使用していないと思われる id を適当に入力してください。そして、“Process”をクリックすると、入力したメールアドレス宛に、パスワード情報が送られてきます。このメールは無くさないようにしてください。
それでは、次に Freenet6 の設定を行います。
Freenet6 を解凍したフォルダに、tspc.conf というファイルがあると思います。これを編集していきます。
まず、tspc.conf をメモ帳などで開きます。このファイルの中に、もあまり違いがありませんので、以下を参考にインストールしてみてください。

tsp dir=

上記の、freenet6 のソフトウエアのダウンロードのところで、FreeBSD の Source code のDownload の部分をクリックすると、Windowsの場合と同様に仕様許諾が書かれているので、問題なければ、“YES” を選択し、“submit Response” をクリックすると Freenet6 のソフト
ウエア (freenet6-0.9.5.tgz) のダウンロードが始まります。ダウンロードされたファイルは圧縮ファイルですので、適当なディレクトリ(例:freenet6) に解凍してください。次にこのディレクトリの中に移動してください。そしてコマンドラインからから始まる行があるので、これを、Freenet6 を解凍したフォルダの名前にあわせて、tsp dir=c:\freenet6のように書き換えてください。次にメールで送られてきた内容が必要になります。メールの中に、<CUT AND PASTE TO TSPC.CONF>#
userid=*******
passwd=*******#</CUT AND PASTE TO TSPC.CONF>という部分があると思います。“*” の部分は、適当な文字列が入っています。これを参考にして、tspc.conf の userid と、passwd で始まる行を編集してください。以上で設定は終了です。最後に、図 10 にある、tscp.exe をダブルクリックしてください。
すると、Freenet6 から tscp.exe を実行した
コンピュータに以下のような IPv6 アドレスが割り当てられ、仮想的な IPv6 ネットワークが利用可能になります。

make all target=freebsd44と入力してください。もし、freebsd のバージョンが 4.4 以外であれば、target の部分をfreebsd4 とする必要があります。その他の OSの場合でも、target の部分の記述が異なりますので、詳しくは、make の出力を参照してください。
上記のコマンドを実行すると、ソフトウエアのコンパイルが完了します。次はインストー
ルです。su コマンドなどで、ソフトウエアをインストールする権限のあるユーザに変更してください。次にコマンドラインから

3ﬀe:b80:2:470e::2

make install target=freebsd44 installdir=/usr/local/tsp

このアドレスは、コンピュータごとに異なり、このアドレスによって IPv6 ではインターネッ
ト上でコンピュータを識別します。後は、IPv6に対応したソフトウエアを使用するだけです。と入力してください。target の部分は先程と同様です。installdir の部分は、ソフトウエアをインストールしたいディレクトリを指定してください。これでインストールが完了します。

UNIX
この Freenet6 のソフトウエアは、FreeBSDや Linux のいくつかのディストリビューションにも対応しています。ここでは、FreeBSD での設定の仕方を紹介致しますが、他の場合でインストールが完了すると、installdir で指定したディレクトリのなかに bin というディレクトリがあります。このディレクトリに移動すると、tspc.conf ファイルがありますので、Winodws の場合を参考にしてこのファイルを編集してください。これで設定は完了です。後は、bin ディレクトリの中の、tscp を実行する

と終了です。

Microsoft のサーバ利用する

3.2.2

Windows2000 の IPv6 キット に は 、Microsoft が提供する仮想的な IPv6 ネットワー
クに接続するためのツールが含まれています。
これを利用して IPv6 ネットワークに接続することも可能です。使い方は簡単です。コマンド
プロンプトから、WWW サーバに接続してみましょう。ここでは、BSD 系の UNIX に IPv6 のソフトウエアなどを公開している KAME Project のホームページに接続してみます。Internet Explorer
で、http://www.kame.net/を開いてみてくだ
さい。すると、図 11 のようなホームページが表示されます。

6to4cfgと入力するだけです。ただ、時々、Microsoftが提供しているサーバに接続できない場合があるので、その場合は時間をおいて再度試してみてください。

3.2.3

佐賀大学のネットワークを利用する

現在、学内のネットワークを IPv6 に対応するための作業を学術情報処理センターと共同で進めています。よって、今後学内のネットワークにコンピュータを接続するだで IPv6 が利用できる環境が整う予定です。詳しくは筆者の方までご連絡ください。

3.3

IPv6 アプリケーションを使用する

OS とネットワークの設定が終われば、あとは実際にアプリケーションを使用するだけです。Windows では、Internet Explorer や、telnet、ftp、ping6、tracert6 といったコマンドが、IPv6 に対応しています。また UNIX 系の OSも、telnet、ftp、などの標準的なコマンドは、IPv6 に対応しています。それでは、実際にいくつかのアプリケーションを使用してみましょう。

図 11: KAME Project のホームページ (IPv6)

ここに表示されているカメの画像が踊っていれば、IPv6 での接続完了です。また、このホームページの一番下の方に、接続したコンピュータの IPv6 が表示されます。
もし IPv6 で接続できていない場合、図 12のようなホームページが表示されます。
図だけだと分かりにくいですが、カメの画像が踊っていないことと、画像の下に表示されるメッセージが違っています。カメが踊っていなければ、IPv6 で接続できていませんので、もう一度、OS などの設定を確認してください。

Windows

その他にメールソフトである Winbiﬀ がIPv6 に対応しています。ただし、これは標準で Windows にインストールされていませんので、ダウンロードする必要があります。IPv6対応した Winbiﬀ は、Windows は、Internet Explorer が、IPv6を使用できますので、実際に IPv6 対応の

http://www.orangesoft.co.jp/Winbiﬀ20/
Winbiﬀv6.html

接続した時の表示です。Windows の場合と同様、カメが踊っています。

図 12: KAME Project のホームページ (IPv4)
図 13: mozilla による接続 (IPv6)で公開されています。インストールの仕方は記述しませんが、一般的なソフトウエアのインストールと同じで、難しくありません。ただしこの Winbiﬀ を IPv6 で使用するには、IPv6に対応したメールサーバが必要となります。
またこれ以外のソフトウエアが

http://win6.goto.info.waseda.ac.jp/win2000-ipv6apps.html
で 公 開 さ れ て い ま す。TeraTerm Pro や 、FFFTP、NTEmacs や Apache などといった様々なソフトウエアと、インストールの仕方が公開されていますので、興味のあるソフトウエアがあればインストールして使ってみてください。

UNIX
UNIX 系の OS では、WWW ブラウザとして mozilla が対応しています。FreeBSD では、標準ではインストールされていませんが、パッケージとして公開されています。インストー
ルは他のソフトウエアと違いはありません。
Linux なども同様です。図 13 は、mozilla でその他のソフトウエアも FreeBSD では、ports や、パッケージと呼ばれる形で 100 あまりものソフトウエアが公開されています。

4

さいごに

本稿では、次世代のインターネットのプロトコルである IPv6 の紹介と、実際にいくつかの OS で IPv6 を利用するための方法を紹介しました。本稿が IPv6 の理解に少しでもお役に立てれば幸いです。

参考文献[1] http://v6pc.jp/,“IPv6 普及・高度化推進協議会”[2] http://v6start.net/,“IPv6 の総合情報サイト”[3] UNIX MAGAZINE 2001 年 5 月 ,“Startting Up IPv6 -IPv6 のインストールと利用-”