特別企画:Windows XP SP1がIPv6を実装


あなたのマシンでIPv6を体験
〜Wndows XP SP1でIPv6を使いこなす〜


及川卓也
マイクロソフト
2002/10/17

Windows XP SP1でIPv6を使う

 さて、ここからは2002年9月にリリースされたWindows XP SP1を用いてIPv6に実際触れてみることにしましょう。

 Windows XPでもIPv6プロトコルスタックは標準提供されていましたが、そのインストールは通常のネットワークプロトコルのインストールと異なり、ipv6コマンドを用いるものでした(ipv6 install)。Windows XP SP1でもipv6コマンドを使うことはできますが、ほかのネットワークプロトコルと同様、「ネットワーク接続」の各インターフェイス(「接続」)のプロパティ画面よりインストールできるようになりました。手順は次のとおりです。

1. Windows XP SP1の「ネットワーク接続」で「接続」(例えば、「ローカル エリア接続」)を選択します。

2. マウスの右ボタンでプロパティ画面を表示させ、「インストール」をクリックします画面1)。

画面1 「接続」のプロパティからプロトコルをインストールする

3. 「ネットワーク コンポーネントの種類の選択」で「プロトコル」を選択します(画面2)。

画面2 「ネットワーク コンポーネントの種類の選択」で「プロトコル」を選択する

4. 「ネットワーク プロトコルの選択」画面で「Microsoft IPv6 Developer Edition」を選択します(画面3)。なお、SP1適用以前にすでにIPv6プロトコルをインストールしている場合には、「Microsoft IPv6 Developer Edition」はリストに表示されません

画面3 「Microsoft Ipv6 Developer Edition」を選択する

 インストールされたIPv6スタックは画面4のように「接続」のプロパティ画面に表示され、インストール済みであることが分かります。ただし、ここでもWindows XP SP1適用以前にIPv6がすでにインストールされている場合にはリストに表示されませんので、注意してください。

画面4 IPv6のインストール完了後、「接続」のプロパティにはIPv6がインストール済みプロトコルとして表示される

 IPv6は自動構成の仕組みを持っているので、ユーザーによるネットワーク設定は不要です。現時点では標準が定まらないため、自動構成される設定だけでは足りない設定項目もありますが、それでも一般ユーザーに128bitsのアドレスを入力させるのはいいアイデアではありません。そのため、WindowsではIPv4と異なり、IPv6用にGUIでの設定画面などは用意されていません。画面4でも「プロパティ」ボタンがグレーアウトしているのが分かるでしょう。

 代わりに提供されているのが、コマンドラインツールとしてのipv6netshです。ipv6コマンドはWindows XPやそれ以前のWindows 2000用のIPv6 Technology Previewから提供されていますが、今後はnetshがipv6用の設定コマンドとして置き換えられることが予定されています。Windows .NET Server 2003ではipv6コマンドは提供されません。

 Windows XPまでのnetshコマンドはipv6コマンドの持つ機能のすべてを網羅してはいませんでしたが、SP1でnetshコマンドが拡張され、ipv6コマンドの持つ機能のすべてがnetshでも可能となりました。表3が主なipv6コマンドとnetshコマンドの対応表です。

ipv6コマンド
netshコマンド
説明
ipv6 install netsh interface ipv6 install IPv6のWindowsへのインストール
ipv6 uninstall netsh interface ipv6 uninstall IPv6のWindowsからのアンインストール
ipv6 [-v] if [インターフェイス番号] netsh interface ipv6 show interface[[interface=]インターフェイス名] [[level=]{normal |verbose}] [[store=]{active | persistent}] インターフェイスについてのIPv6の構成状態の表示
ipv6 ifd インターフェイス番号 netsh interface ipv6 delete interface[[interface=]インターフェイス名] [[store=]{active |persistent}] インターフェイスの削除
ipv6 ncf [インターフェイス番号 [IPv6アドレス]] netsh interface ipv6 delete neighbors[[interface=]インターフェイス名][[address=]IPv6アドレス] インターフェイスの近隣ノードキャッシュの削除
ipv6 rc [インターフェイス番号 [IPv6アドレス]] netsh interface ipv6 showdestinationcache [[interface=]インターフェイス名][[address=]IPv6アドレス] インターフェイスのルートキャッシュの表示
表3 主なipv6コマンドと対応するnetshコマンド (一部抜粋、ここをクリックすると表全体を別ウィンドウで拡大表示します

自動構成されたIPv6情報を見る

 IPv6はステートレスな自動構成が実現されています。利用しているネットワークのルータがすでにIPv6のルーティングに対応されている場合、Windows XPはルータからルータ通知メッセージ(RA:Router Advertisement)を受け取り、自動的にアドレスを構成します。ルータが対応していない場合でも、リンクローカルアドレスを自動構成します。各インターフェイスの一覧は「netsh interface ipv6 show interface」で表示できます(画面5)。

画面5 netshにより表示されたIPv6インターフェイスの一覧 (画面をクリックすると拡大表示します)

 netshコマンドには会話型モードとバッチモードの2つのモードがあります。コマンドプロンプトからnetshと入力することで会話型モードが起動され、「netsh>」プロンプトでnetshの各サブコマンドを実行できます。IPv6関連のコマンドは「interface ipv6」サブコンテキストにあるので、netshを会話型モードで起動後、「interface ipv6」と入力します。ここで「show interface」と入力することで画面5と同じ結果が表示されます。同じことをコマンドプロンプトから直接行うには、「netsh」に続けて、サブコンテキストとコマンドを入力します。これがバッチモードです。この場合は「netsh interface ipv6 show interface」と入力することになります。画面5の例はバッチモードでの実行例です。この後の説明ではバッチモードでの表記を行いますが、同じことは会話型モードでも可能です。会話型モードの使い方は「netsh>」プロンプトで「?」を入力することでヘルプが表示されるので、それを参照してください。

 Windows XPではipv6 ifコマンドでのみ実際に構成されたIPv6アドレスを表示できましたが、Windows XP SP1ではipconfigコマンドでIPv4とIPv6の両方のアドレスを表示できるようになっています(画面6)。

画面6 SP1ではipconfigコマンドがIPv6対応された (画面をクリックすると拡大表示します)

 この例ではルータが設定されていないので、リンクローカルアドレスのみがIPv6アドレスとして表示されています。

 また、アドレス以外の情報については「netsh interface ipv6 show interface interface=インターフェイス名」で表示できます(画面7)。

画面7 netshコマンドによるインターフェイスの情報の詳細表示 (画面をクリックすると拡大表示します)

 ホスト上のIPv6が正常に動作しているかを確認するにはループバックアドレスにpingを実行してみるといいでしょう。IPv6のループバックアドレスは「::1」です。IPv6用のpingはping6コマンドになります。ping6の使い方はIPv4でのpingと同じです。ping6に続けて相手ホストのホスト名かアドレスを入力します(画面8)。

画面8 ping6コマンドによるループバックアドレスの確認 (画面をクリックすると拡大表示します)

 もしほかにIPv6が利用できるホストがネットワーク上に存在する場合は、そのホストへの到達も確認してみましょう。ping6に相手ホストのIPv6アドレス(リンクローカルアドレス)を指定します(画面9)。

画面9 別ホストのリンクローカルアドレスを指定してping6コマンドを実行 (画面をクリックすると拡大表示します)

 ご覧のように「パラメータに問題があります。」と表示されてしまいます。これはIPv6では相手ホストに到達するため、利用するインターフェイスを特定しなければならないからです。ここでは、指示されているように、スコープIDを利用してみましょう。スコープIDの指定はIPv6アドレスの後ろに「%」でインターフェイスIDを付加することで行います。画面5で「ローカル エリア接続」のインターフェイスIDは4であるのが分かります。そこで、ここでは「%4」を付加します(画面10)。

画面10 スコープIDを指定したping6コマンドの実行 (画面をクリックすると拡大表示します)

 IPv6ホストに一度アクセスすることで近隣ノードキャッシュにエントリが生成されます。「netsh interface ipv6 show neighbors」コマンドでエントリを確認してみましょう。「netsh interface ipv6 show neighbors interface=インターフェイス名」を実行します。画面11のように表示されます。

画面11 近隣ノードキャッシュの確認 (画面をクリックすると拡大表示します)

 これでIPv6を用いての基本的な通信が可能なことは確認できました。ここでは説明しませんでしたが、このほかにもWindows XPを単純な静的ルーティングを行うルータに設定することなどができます。オンラインヘルプなどを参考に試してください。

6to4でインターネット上のIPv6サイトにアクセスする

 6to4はIPv4を利用したトンネル技術の1つです。IPv6のプレフィックスにIPv4グローバルアドレスを埋め込むことにより、自動トンネル構成を可能にしています(図2)。

2002
IPv4アドレス
SLA
インターフェイス識別子
16bits
32bits
16bits
64bits
図2 6to4アドレス体系

 なお、Windows XPの6to4の実装ではインターフェイス識別子の部分にもIPv4アドレスが埋め込まれます。

 図3のように、6to4を利用することで、IPv4を用いて2サイト間のIPv6接続ができます。また、インターネット上に用意された6to4リレールータを用いることでIPv6のインターネット(IPv6によりアクセス可能なインターネット上のホスト)への接続も可能になります。

図3 6to4を用いたIPv6通信


 Windows XPではグローバルIPv4アドレスを持つインターフェイスがあった場合、自動的に6to4機能が有効になります。例えば、ダイヤルアップでプロバイダに接続し、それにグローバルアドレスが割り当てられていれば、6to4機能を使ってIPv6インターネットに接続することができます。

 画面12は6to4が有効になったホストでのIPv6アドレスの表示です。モザイクが掛かっている部分がグローバルIPv4アドレスの埋め込まれている部分です。

画面12 6to4が有効になったホストのIPv6アドレス (画面をクリックすると拡大表示します)


 Windows XPでは既定の設定で、6to4リレールータとしてマイクロソフトが公開している6to4.ipv6.microsoft.comを用いるように構成されています。そのため、たとえ日本のプロバイダに接続して、日本側にあるIPv6サイトにアクセスする場合でも6to4を用いたパケットは一度太平洋を越え、6to4リレールータを経由して、再び海を越えて日本に戻ってきます。

 ここではKDDI研究所が実験目的で6to4リレールータを公開していますので、そちらにアクセスしてみましょう。KDDI研究所の6to4リレールータを用いるには「netsh interface ipv6 6to4 set relay」を用います(画面13)。なお、KDDI研究所の6to4公開実験の概要については[6to4」のページをご覧ください。

画面13 6to4リレールータの変更 (画面をクリックすると拡大表示します)

 これで6to4の設定は完了です。ping6やtracert6を用いてIPv6ホストへの到達性を確認できます。また、IPv6対応のアプリケーションであるInternet ExplorerやFTPクライアント、Telnetクライアントを利用してIPv6ホストに接続することも可能です。


 以上簡単にWindows XP SP1を用いたIPv6の設定を紹介しました。現在はまだIPv6対応のアプリケーションが多く提供されているとはいえない状況ですが、SP1で正式にIPv6サポートが開始されたことで、ますます多くのアプリケーションがIPv6対応になることが期待できます。IPv6の世界を体験できる時期ももうすぐでしょう。

関連リンク

Microsoft IPv6 Technology Preview for Windows 2000について(英文)

Windows XPのIPv6実装について(英文)

Windows CE.NETのIPv6実装について(英文)

MSR(Microsoft Research)によるIPv6参照実装について


Index
特別企画:Windows XP SP1がIPv6を実装
  Part.1 マイクロソフトのIPv6への取り組み
独立したIPv6ホストやサイトに接続するためのトンネル技術
Part.2 WindowsXP SP1でIPv6を使う
・自動構成されたIPv6情報を見る
・6to4でインターネット上のIPv6サイトにアクセスする
 


「Master of IP Network総合インデックス」

@IT Special

- PR -

TechTargetジャパン

Master of IP Network フォーラム 新着記事
  • ガートナーが示す、IoTプラットフォーム導入のためのヒントとは (2017/4/6)
     企業の経営判断の中心はERPからIoTへと移行しようとしている。P&Gと米国の大手機器メーカーの事例とともに、「IoTをどう生かすべきか」のヒントをガートナーのイベントから探る
  • シスコのSD-WANが、分かりにくいのはなぜか (2017/2/27)
     シスコシステムズは、SD-WANに対してどのようなスタンスをとっているのか。結論から言えば、同社の既存技術の適用形態としてSD-WANを捉えており、一方で即座に活用できるソリューションを求める人々には、「Cisco Meraki」を推進するということになる
  • ネットワークの疎通を確認するには?〜ping/traceroute〜 (2017/1/30)
     マシンのネットワーク設定を行い、外部のネットワークやサーバとつながるかどうかを確認する際には、実際にネットワーク・アプリケーションを使う前に、「ping」「traceroute(tracert)」などのコマンドを用いる方法が有効だ
  • ping 〜ネットワークの疎通を確認する (2017/1/23)
     pingは、ネットワーク疎通を確認したいホストに対してIPパケットを発行し、そのパケットが正しく届いて返答が行われるかを確認するためのコマンドだ
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る

ホワイトペーパーTechTargetジャパン

注目のテーマ

Master of IP Network 記事ランキング

本日 月間
ソリューションFLASH