Windows 2000 で IPv6

Windows 2000 でも IPv6 が使えるが、IPv6 スタックは標準品ではないので追加しなければならない。正式なリリースではないが、いちおう問題なく動く Microsoft IPv6 Technology Preview が Microsoft の MSDN Online からダウンロード可能である。

hotfix 小細工

ダウンロードしたファイルを実行すると、setup.exe などが伸張される。しかし、こいつは、Windows 2000 Service Pack 1 にインストールされることを期待しているので、それ以外の Service Pack にインストールしようとすると、setup.exe は実行すらさせてくれない。これは、setup.exe に -x オプションを付けて強制的に実行させることで、回避可能だ。setup.exe を実行すると、必要なファイルが展開される。

ここで展開された hotfix.exe を実行すればいいのだが、これまた Service Pack にこだわるので、これを騙すための小細工が必要だ。hotfix.inf というファイルに Servce Pack 1 を指定する NtServicePackVersion=256 という行があるので、使っている Service Pack に合わせて、これを以下のように書きかえてしまう。そうすると hotfix.exe が実行できるようになるので、実行して再起動する。

NtServicePackVersion=512(SP2 の場合)
NtServicePackVersion=1024(SP3 の場合)

一応、Service Pack 2/3 ともにインストールしても不具合が出ないことは確認しているが、自己責任で。

プロトコル追加

再起動後、「コントロールパネル」→「ネットワークとダイヤルアップ接続」から、使用するインタフェースのプロパティを開き、「インストール (I)」ボタンをクリックする。表示された「ネットワークコンポーネントの種類の選択」ダイアログにおいて「プロトコル」を選択し、「追加 (A)」ボタンをクリック。「ネットワークプロトコルの選択」の中に、「Microsoft IPv6 Protocol」が存在するはずなので、これを選んで「OK」ボタンをクリックするとインストールされる。

Windows 2000 設定例

ここでもアドレスなどはルータ広告から決定されるので、設定は必要ない(ここではできない)。正常かどうかは、hotfix.exe ともに付いてくる ping6.exe や ipv6.exe などを使って確認するといいだろう。ipv6.exe に、インタフェースの状態を表示する if を付けて実行すると、以下のような具合に設定されていることが確認できる。

C:\IPv6Kit>ipv6 if

Interface 3 (site 1): ローカル エリア接続
  uses Neighbor Discovery
  link-level address: 00-c0-f6-b0-e2-84
    preferred address 2001:2a0:204:1000:2c0:f6ff:feb0:e284, 2591641s/604441s (addrconf)
    preferred address fe80::2c0:f6ff:feb0:e284, infinite/infinite
IPv6 アドレスの手動設定

インタフェースの IPv6 アドレスを手動で追加するときは、ipv6.exe の adu コマンドを使う。Interface 番号は、ipv6 if で表示される番号だ。

C:\IPv6Kit>ipv6 adu { Interface 番号 }/{ アドレス }

↓具体例

C:\IPv6Kit>ipv6 adu 3/2001:2a0:204:1000::200

また、アドレスを削除する場合は、lifetime をゼロにして、同じコマンドを実行すればいい。

C:\IPv6Kit>ipv6 adu 3/2001:2a0:204:1000::200 lifetime 0

ipv6.exe には、これら以外にも色々なサブコマンドがあり、IPv6 の挙動を確認したり、設定を変更することができる。詳しくは、Getting Started with the Microsoft IPv6 Technology Preview for Windows 2000を参照されたい。

アプリケーション

Windows 2000 で取り敢えず使える IPv6 enabled アプリケーションとして、Internet Explorer 5.x が が挙げられる。当方では、Internet Explorer 5.5 を使っているが、何も考えなくても IPv6 サイトに接続することができた。Internet Explorer 6 は、対応していないのか、IPv6 で使用することはできなかった。

そのほかのアプリケーションについては、IPv6 related works が詳しい。

2003/05/18 作成
制作 − 突撃実験室