Mobile IPv6 for Linux ガイド(with USAGI patch)

UMIP-0.1はOBSOLETEです。

English version is here.

イントロダクション

このドキュメントは,Linux 上で Mobile IPv6(MIPv6) を設定するためのチュートリアルである.

このドキュメントでは,基本的なカーネルコンフィグレーション,IPv6 ネットワークのオペレーション,設定経験,MIPv6 に関する基礎知識があることを作業の前提としている. IPsec を使いたい場合は,IPsec の基本的な知識と,IPv6 のトンネルゲートウェイの設定経験も必要になるだろう.

まずはじめに、README.MIPv6 を参照してほしい..

このドキュメントで "(optional)" が付与されている項目は,必須事項ではなく,必要に応じて準備あるいは実行する処理である.
このドキュメントで "(ready-logo)" が付与されている項目は IPv6 Ready Logo Program Phase-2 MIPv6 を取得するための環境を準備するために必要な設定あるいは手順を示している.


必要なソフトウェアについて

HA, MN, CN のすべてで必要なソフトウェア

HA で必要なソフトウェア

HA と MN で必要なソフトウェア


カーネルと mip6d のビルド


設定

mip6d のインストール後は,mip6d.conf(5)を参照することにより,設定に有効な情報を入手する事ができる.

HA 固有の設定

MN 固有の設定

CN 固有の設定

IPsec の設定


起動手順

HA の起動手順

  1. mip6d を起動する前に,以下の条件が成立していることを確認する.
    • ルータとして起動できること.
    • HA のアドレスとして,グローバルユニキャストアドレスが home link のインタフェースに設定されていること.
    • IPsec SA が設定されていること(IPsec を鍵の手動設定で使用する場合)
    • (optional): syslogd が起動していること.
  2. mip6d を起動する.
  3. mip6d 起動後に,
    • radvd を起動する.

MN の起動手順

  1. mip6d を起動する前に,以下の条件が揃っているか確認する.
    • カーネルからの RS 送信を抑止していること(ready-logo で必要,以下を参照のこと).
    • mip6d が起動する前に,mip6d が使用するネットワークインタフェースが起動していること.
    • IPsec SA が設定されていること(IPsec の鍵を手動設定で使用する場合).
    • (optional): syslogd が起動していること.
  2. これらの状態が確認できたら,mip6d を起動する.
IPv6 Ready Logo phase 2 のテストを実行する場合には,以下の点に注意すること.

CN の起動手順

  1. mip6d を起動する前に,以下の点に注意すること.
    • (optional): syslogd が起動していること.
  2. mip6d を起動する.

mip6d 起動スクリプトの例

他のディストリビューションに対応した例は準備中です.


動作確認

起動確認

Binding cache の確認

Binding update list の確認

Route optimization の確認

Route optimization を簡単に確認する方法は(TAHI test を用いるか,パケットをダンプすることにより確認する以外には)難しい.
しかし,USAGI CVS リポジトリに含まれている ping6 を使用することにより,パケットが Route Optimization されているかどうかを確認することができる.

例:


既知の問題

  1. 以下の事項は未サポートである.
    • IKE デーモンとの相互運用
    • mip6d が起動している間の SPD の消去
    • mip6d が起動している間の,以下の条件化での SA の再設定
      [HA の場合] 対応する Binding cache が存在する場合
      [MN の場合] foreign link に接続している場合
  2. HA が DAD を実行している間,同じ HA に対して BU を再送しないこと.
    HA が最初の Home registration の BU の処理をしている最中は,再送された BU を処理することはできず,失敗に終る.
    このような場合,InitialBindackTimeoutFirstReg あるいは InitialBindackTimeoutReReg を 1.0 秒よりも大きく設定することにより,問題を回避することができる(すなわち,MN は 2 番目の BU を送信するまでに,InitialBindackTimeoutFirstReg あるいは INITIAL_BINDACK_TIMEOUT 以上待つことになる).MN の起動手順も参照のこと.


$Id: index.html.ja,v 1.4 2007-03-31 16:55:50 yoshfuji Exp $
Copyright ©2006,2007 USAGI/WIDE Project, All Rights Reserved.