Mobile IPv6の実験

指導教員 坂本直志 准教授
05kc047 近藤将臣

目次

  1. 1.はじめに
  2. 2.Mobile IPv6の概要
    1. 2.1.IPv6
      1. 2.1.1.IPv6のアドレス表記方法
      2. 2.1.2.IPv6のアドレス体系
      3. 2.1.3.IPv6の接続方式
      4. 2.1.4.6to4
    2. 2.2.Mobile IPv6
      1. 2.2.1.Mobile IPv6の構成
      2. 2.2.2.Mobile IPv6の基本動作
  3. 3.実験
    1. 3.1.準備
      1. 3.1.1.Ubuntuのカーネル再構築
      2. 3.1.2.mip6dのインストール
      3. 3.1.3.IPsec-toolsのインストール
      4. 3.1.4.各種設定
    2. 3.2.実験内容
      1. 3.2.1.ifconfig
      2. 3.2.2.route
      3. 3.2.3.ping6
      4. 3.2.4.traceroute6
      5. 3.2.5.ファイルのダウンロード
    3. 3.3.実験結果
  4. 4.考察
  5. 5.参考文献
  6. 6.付録
    1. 6.1.mip6d-mn.conf
    2. 6.2.setkey.conf
    3. 6.3.起動スクリプト
    4. 6.4.ifconfigの表示
    5. 6.5.routeの表示
    6. 6.6.mip6dログ

1.はじめに

近年、公衆無線LANのアクセスポイントの増加やモバイル機器の性能の向上など自宅外でのインターネット環境が整ってきている。通常、インターネットへのアクセスポイントが変わるとIPアドレスも変化する。つまり接続しているネットワークが変わるためアドレスが変わることになる。そうすると変更前のアドレスあての通信は切断され、新しいアドレスでやり直す必要がある。この時IPアドレスが変わっても通信し続けられる仕組みがMobile IPv6である。これは、現在のアドレスへトンネルすることにより、アドレスが変化しても通信し続けられるというものである。例えば、電車などで移動していてもストリーミングが中断することなく続けられるというメリットがある。この研究では、Mobile IPv6での実験を通して、その実用性を確認する。

2.Mobile IPv6の概要

2.1.IPv6

IPv6(Intrenet Protocol version 6)とは、現行のIPv4(Internet Protocol version 4)の次の世代のインターネットプロトコルである。IPv6とIPv4の大きな違いは、そのアドレス空間である。IPv6では128bitであるので、2128個のIPアドレスがあるが、IPv4では32bitであるので、232個のIPアドレスしかなく、2011年頃にはなくなるといわれている。その他にもNAT(Network Address Translation)を使わなくてよくなりPeer to Peerアプリケーションやネットワークゲームなどの利用が容易になる。

2.1.1.IPv6のアドレス表記方法

アドレスは128bitの長さがあり、これを16bitずつ":”で区切り、16進数で表される。また、連続したゼロを"::”でまとめることができる。これは1回だけ使える。例えば、

2002:8514:A0E5:0000:0000:0000:0000:0001

というアドレスは

2002:8514:A0E5::1

と表すことができる。また、IPv6アドレスのプレフィックスというものがあり、これはネットワークを意味するアドレスである。つまりはIPv4におけるネットワークアドレスに相当する。例えば

2002:8514:A0E5::/48

この場合だとプレフィックスは上位48bitの「2002:8514:A0E5」となる。

2.1.2.IPv6のアドレス体系

IPv6のアドレスには以下の三つのタイプがある。

ユニキャストアドレス
一つのインターフェースに割り当てられたIPアドレス。IPv6インターネット上で一意なグローバルユニキャストアドレスと、同一リンク内で使われるリンクローカルユニキャストアドレスがある。
エニーキャストアドレス
複数のインターフェースに割り当てられるIPアドレス。エニーキャストアドレスあてのパケットは、そのアドレスを持つ最も近いインターフェースに送られる。
マルチキャストアドレス
複数のインターフェースに割り当てられるIPアドレス。マルチキャストアドレスあてのパケットは、そのアドレスを持つすべてのインターフェースに送られる。

2.1.3.IPv6の接続方式

IPv6に接続する方法として、ネイティブ、デュアル、トンネルがある。ネイティブ接続とは、IPv6専用の線を引いてIPv6パケットで通信する方式。デュアル接続とは、一つの回線でIPv6/IPv4両方のパケットで通信する方法。トンネル接続とは、IPv6のパケットをIPv4のパケットでカプセル化し通信する方法。

2.1.4.6to4

今回の実験では、IPv6への接続は特別な機器を用意することなく接続できる6to4というトンネル接続を使用した。6to4とは、ネイティブなIPv6ネットワークと接続しているリレールータを経由して、IPv4ネットワークからIPv6ネットワークに接続する方法である。

6to4
図 1:6to4

また、6to4でのアドレスは次のようになる。(IPv4アドレスを133.20.160.229とする)

表1:16進数への変換
10進数 133 20 160 229
16進数 85 14 A0 E5

IPv4アドレスを8bitごとに10進数から16進数へ変換する。変換したものを16bitずつ2002の後に:で区切って挿入する。

2002:8514:a0e5:……

これが6to4のプレフィックスとなる。

2.2.Mobile IPv6

2.2.1.Mobile IPv6の構成

Mobile IPv6を動作させるにはIPv6への接続環境、モバイルノード、通信先ノード、ホームエージェントが必要である。構成は以下の図のようになる。

kousei
図 2:Mobile IPv6の構成図
ホームアドレス
モバイルノードに永久的に割り当てられるユニキャストアドレス。このアドレスはモバイルノードのホームリンク内にあり、ルーティングによりモバイルノードのホームアドレスあてのパケットが届く。
モバイルノード
ホームアドレスによってアドレスが変化しても通信を続けることができるノード。
ケアオブアドレス
モバイルノードに実際に割り当てられているアドレス。
通信先ノード
モバイルノードが通信している相手ノード。
ホームエージェント
モバイルノードのホームリンク上のルーター。モバイルノードの現在のケアオブアドレスを登録する。また、モバイルノードがホームリンクから離れているあいだ、ホームエージェントはモバイルノードのホームアドレスあてのパケットを捕らえ、カプセル化し、モバイルノードのケアオブアドレスへトンネルする。

2.2.2.Mobile IPv6の基本動作

Mobile IPv6では、モバイルノードが接続しているリンクにより二つの場合が考えられる。それは、ホームリンクに接続している場合、外部リンクに接続している場合である。Mobile IPv6では、どちらの場合でもホームアドレスによって通信し続けることができる。ホームアドレスはモバイルノードのホームリンクのサブネットプレフィックスの範囲で割り当てられる。
はじめに、モバイルノードがホームリンクに接続している場合は、パケットは一般的なインターネットのルーティングメカニズムで、モバイルノードのホームリンクのホームアドレスあてに送られる。

homelink
図 3:ホームリンクにあるときのパケットの流れ

一方で、モバイルノードが外部リンクに接続している場合では、モバイルノードと通信先ノードの通信で2つのモードがある。
一つ目は、2方向へのトンネルである。これはMobile IPv6の基本的な動作である。今回の実験ではこのモードをのみを使用した。

2方向へのトンネルとは、以下の二つの状態である。一つ目は通信先ノードへのパケットはモバイルノードからホームエージェントへトンネルされホームリンクから通信先ノードへ送られる場合。パケットはあて先を通信先ノード、送信元をモバイルノードのホームアドレスとして作られ、それをホームエージェントあてでカプセル化して送信する。トンネルを通りホームエージェントへ到着するとカプセル化を解除して通信先ノードへ送信される。

go
図 4:モバイルノードから通信先ノード

二つ目は通信先ノードからのパケットはホームエージェントへ送られ、ホームエージェントがモバイルノードにトンネルをする場合。パケットはホームアドレスあてで送信され、ホームエージェントに到着するとあて先をモバイルノード、送信元をホームエージェントとしてカプセル化する。モバイルノードに到着するとカプセル化が解除されもとのパケットが取り出される。

back
図 5:通信先ノードからモバイルノード

また、モバイルノードが外部リンクにある場合、ケアオブアドレスをホームリンク上のルーターであるホームエージェントに登録しなければならない。ホームアドレスとケアオブアドレスの対応のことをバインディングと言い、モバイルノードはホームエージェントにバインディングアップデートメッセージを送ることによるバインディングの登録をおこなう。そしてホームエージェントはバインディングアクノーレッジメントメッセージを返すことでモバイルノードに返事をする。

buindingupdate
図 6:バインディングアップデートの様子

ふたつ目のモード、"経路最適化”は、通信先ノードからのパケットはモバイルノードのケアオブアドレスあてに直接送ることが出来る。つまり通信先ノードからモバイルノードへの最短経路が使われる。これにはモバイルノードの現在のバインディングを通信先ノードに登録することが必要となる。
通信先ノードがパケットをどこかのIPv6あてに送るとき、通信先ノードはパケットのあて先アドレスエントリーのキャッシュされたバインディングをチェックする。もしあて先アドレスが見つかれば、ノードは新しいIPv6ルーティングヘッダを使って、バインディングが示すケアオブアドレスのモバイルノードへパケットを送る。

routeopt
図 7:経路最適化のパケット

3.実験

3.1.準備

Mobile IPv6に対応しているOSはFreeBSDやUbuntuなどがある。今回の実験では、Ubuntuを利用した。また、ホームエージェントはWIDEのNautilus6のホームエージェントサービスを利用した。IPv6への接続環境は6to4というトンネルを利用した。実験のシステム構成は以下の図に示す。

jikkensys
図 8:実験のシステム構成

3.1.1.Ubuntuのカーネルの再構築

UbuntuでMobile IPv6の機能を使用するには、カーネルの再構築をする必要がある。今回の実験では、Ubuntu8.04、カーネルのバージョンは2.6.27.7を使用した。また、マシンスペックは以下のに示す。

表2:マシンスペック
OS Ubuntu8.04
カーネルバージョン 2.6.27.7
CPU Pentium M 730@1.6GHz
Memory 1GB
Network Adapter Marvell Gigabit Ethernet Controller

まずはカーネルのソースコードを入手する必要がある。The Linux Kernel Archives(http://www.kernel.org/)などからダウンロードして解凍する。

#cd /usr/src
#wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.7.tar.bz2
#tar jxvf linux-2.6.27.7.tar.bz2
#ln -s linux-2.6.27.7 linux
#cd linux

次に、カーネルの再構築に必要なパッケージをインストールする。必要なパッケージは以下のものである。

autoconf
automake
binutils
gcc
gettext
kernel-package
libncurses5-dev
libtool
linux-libc-dev

パッケージのインストールには以下のコマンドを実行する。

#apt-get update
#apt-get install <package>

<package>に必要なパッケージ名を挿入する。

続いて、カーネルのコンフィギレーションを行う。Mobile IPv6のモバイルノードの機能を使用するためには以下の項目をすべて有効にする必要する必要がある。

CONFIG_IKCONFIG_PROC
CONFIG_EXPERIMENTAL
CONFIG_SYSVIPC
CONFIG_PROC_FS
CONFIG_INET
CONFIG_IPV6
CONFIG_IPV6_MIP6
CONFIG_XFRM
CONFIG_XFRM_USER
CONFIG_XFRM_SUB_POLICY
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION
CONFIG_IPV6_TUNNEL
CONFIG_IPV6_ADVANCED_ROUTER
CONFIG_IPV6_MULTIPLE_TABLES
CONFIG_IPV6_SUBTREES
CONFIG_ARPD
CONFIG_INET6_ESP
CONFIG_NET_KEY
CONFIG_NET_KEY_MIGRATE

カーネルの設定をするコマンドは以下の通りである。

#make menuconfig

はじめに"Load an Alternate Configuration File”で現在のカーネルの設定をロードする。

menuconfig
図 3:カーネル設定のロード

その後、前述した項目を有効にする。設定が終了したら、次はコンパイルである。

#make-kp#make-kpkg -initrd kernel_image

コンパイルが終了したなら、/usr/src/linux-image-2.6.27.7_2.6.27.7-10.00.Custom_i686.debが作成されるので、これをインストールする。コマンドは以下のようになる。

#cd /usr/src
#dpkg -i linux-image-2.6.27.7_2.6.27.7-10.00.Custom_i686.deb

インストールが完了した後、再起動すれば自動的に新しいカーネルで起動する。

3.1.2.mip6dのインストール

通信用のデーモンであるmip6dのインストールには以下のパッケージが必要になる場合もあるのでインストールする。

flex
bison

コマンドは以下のようになる。

#wget ftp://ftp.linux-ipv6.org/pub/usagi/patch/mipv6/umip-0.4/daemon/tarball/mipv6-daemon-umip-0.4.tar.gz
#tar zxvf mipv6-daemon-umip-0.4.tar.gz
#cd mipv6-deamon-umip-0.4

#./configure --enable-vt
#make
#make install

以上によりmip6dのインストールがされる。

3.1.3.IPsec-toolsのインストール

mip6dでIPsecの機能を利用するので、その設定をするためにIPsec-toolというソフトウェアが必要となる。

#apt-get update
#apt-get install ipsec-tools

3.1.4.各種設定

mip6dとIPsecの設定をする。設定はmip6d-mn.conf、setkey.confというファイルで行う。設定例は付録に示す。

3.2.実験内容

3.2.1.ifconfig

ifconfigではアドレスの確認や割り当てをおこなう。以下のコマンドで6to4のインターフェースにアドレスを設定する。

#ifconfig sit0 add 2002:8514:a0e5::1/16

表示例は付録に示す。

3.2.2.route

routeコマンドでルーティングテーブルの確認やルーティングの設定をおこなう。以下のコマンドで6to4リレールーターに転送するように設定する。

#route -A inet6 add ::/0 dev sit0 gw ::192.88.99.1

表示例は付録に示す。

3.2.3.ping6

ping6による実験をおこなう。ping6ではICMP Echo Requestメッセージを対象ノードへ送信し、対象ノードからEcho Replyメッセージが帰ってくることで到達性を確認する。またそのときの時間やパケットロスよりラウンドトリップタイム(RTT)やパケットロス率を調べることが出来る。ここではMobile IPv6がON/OFFの時について実行し、それらの変化について調べる。

3.2.4.tracroute6

traceroute6による実験をおこなう。traceroute6では、まずIPv6ヘッダのHop Limitを1としてパケットを送信する。最初のルーターに到着するとHop Limitが0となりICMP Time Exceededメッセージが返される。次にHop Limitを2にしたパケットを送信する。これを対象ノードまで繰り返すことにより経路情報を調べることが出来る。ここでは、Mobile IPv6がON/OFFの時に経路がどう変化するかを調べる。

3.2.5.ファイルのダウンロード

ファイルのダウンロードに関する実験をおこなう。ここでは、ファイルのダウンロード中に移動しても、つまり、ケアオブアドレスが変化しても、ホームアドレスでダウンロードをし続けられるかを確認する。

3.3.実験結果

はじめに、Windows XPでMobile IPv6を利用しようとしたが、UbuntuはMobile IPv6には対応しているが、Linux用のMobile IPv6通信デーモンであるmip6dを利用するためにカーネルの再構築をした。この状態では6to4でIPv6に接続することはできたが、Mobile IPv6を起動し、ping6でIPv6サイトへpingを打つと、"connect:invalid argument”となってしまった。一方、ホームアドレスに対しpingを打つと応答するので起動していることは確認できた。

4.考察

このようになってしまった理由は、mip6dがIPv6のトンネル接続の6to4に対応していなかったからである。これは、mip6dのログによって確認できる。ネイティブなIPv6環境がなくこれ以上確認できないので残念だ。

Mobile IPv6は電車で移動しながらストリーミングを視聴するということなどが考えられるが、このように導入にとても手間がかかり、簡単に使えるような状況でないといえる。特に、IPv6への接続の問題は大きいと思う。ネイティブな接続環境は少なく、トンネルで接続するほうが簡単で接続しやすい。この状況ではMobile IPv6は実用的でないと考えられる。また、Windows XPやMacOSでのMobile IPv6対応を調べたが、Mobile IPv6には対応していなかった。Mobile IPv6はIPv6のアプリケーションとして有用であると話題であるが、IPv4システム環境では利用できないことがわかった。

5.参考文献

  1. D. Johnson,Rice University,C. Perkins,Nokia Research Center,J. Arkko,Ericsson,"Mobility Support in IPv6”,RFC3775,June 2004
  2. "USAGI Project”,http://www.linux-ipv6.org/
  3. "Nautilus6 Operational HA”,https://op-ha.nautilus6.org/
  4. "Linux Mobile IPv6 HOWTO”,http://tldp.org/HOWTO/Mobile-IPv6-HOWTO/
  5. "6to4”,http://www.6to4.jp/

6.付録

6.1.mip6d-mn.conf

# MIPL daemon configuration file
# 
# Manage Home Agent subscription at https://op-ha.nautilus6.org
# Nautilus6 project - visit http://www.nautilus6.org
#
# 2001:200:0:8450::72 is your Home Address
# 2001:200:0:8450::1 is the Home Agent address

NodeConfig MN;

## If set to > 0, will not detach from tty
DebugLevel 10;

## Support route optimization with other MNs
DoRouteOptimizationCN disabled;

## Use route optimization with CNs
DoRouteOptimizationMN disabled;

UseCnBuAck disabled;


MnDiscardHaParamProb disabled;

# The Binding Lifetime, for example 60 seconds
MnMaxHaBindingLife 60;

MnRouterProbes 1;

# Replace interface1 with the name of your first network interface
Interface "eth0" {
    MnIfPreference 1;
    IfType MN;
}

# Replace interface1 with the name of your first network interface
MnHomeLink "eth0" {
    HomeAddress 2001:200:0:8450::72/64;
    HomeAgentAddress 2001:200:0:8450::1;
}

##
## IPsec configuration
##

UseMnHaIPsec enabled;

## Key Management Mobility Capability
KeyMngMobCapability disabled;

IPsecPolicySet {
    HomeAgentAddress 2001:200:0:8450::1;
    HomeAddress 2001:200:0:8450::72/64;

    IPsecPolicy HomeRegBinding UseESP;
    IPsecPolicy MobPfxDisc UseESP;
    IPsecPolicy TunnelPayload UseESP 706 707;
}

6.2.setkey.conf

#!/usr/sbin/setkey -f

# NOTE: Do not use this file if you use racoon with racoon-tool
# utility. racoon-tool will setup SAs and SPDs automatically using
# /etc/racoon/racoon-tool.conf configuration.
#
# Manage Home Agent subscription at https://op-ha.nautilus6.org
# Nautilus6 project - visit http://www.nautilus6.org
#
# 2001:200:0:8450::72 is your Home Address
# 2001:200:0:8450::1 is the Home Agent address

# Flush the SAD and SPD
flush;
spdflush;


add 2001:200:0:8450::72 2001:200:0:8450::1
        esp 704
        -m transport
        -E des-cbc "LqYYaKrz"
        -A hmac-sha1 "h9nZ5dDWV7SaEArFR8CA";

add 2001:200:0:8450::1 2001:200:0:8450::72
        esp 705
        -m transport
        -E des-cbc "gdKV358K"
        -A hmac-sha1 "NhVJxaQhvApLEFwcRy7k";

add 2001:200:0:8450::72 2001:200:0:8450::1
        esp 706
        -m tunnel
        -u 706
        -E des-cbc "TAag47jw"
        -A hmac-sha1 "JgwqPAKEHLrYkC6pnypB";

add 2001:200:0:8450::1 2001:200:0:8450::72
        esp 707
        -m tunnel
        -u 707
        -E des-cbc "bUbxmeSs"
        -A hmac-sha1 "NsVUSUa5xY7GjGF3RjaZ";

6.3.起動スクリプト

#!/bin/sh
set -e

#
# Make sure below as your environment
#
PATH=${PATH:+$PATH:}/usr/local/sbin:/usr/sbin:/sbin
mip6d_conf=/usr/local/etc/mip6d-mn.conf
setkey_conf=/usr/local/etc/setkey.conf
#device used by mip6d.
DEV=eth0

case "$1" in
    start)
    # disable to send RS from kernel.
    #echo 0 > /proc/sys/net/ipv6/conf/all/router_solicitations
    #echo 0 > /proc/sys/net/ipv6/conf/default/router_solicitations
    #echo 0 > /proc/sys/net/ipv6/conf/all/router_solicitation_interval
    #echo 0 > /proc/sys/net/ipv6/conf/default/router_solicitation_interval

    # set IPsec configuration
    setkey -f $setkey_conf

    # bring up the interface which MN will use.
    ifconfig $DEV up

    # invoke mip6d
    mip6d -c $mip6d_conf
        echo "Starting MIPv6 MN."
    ;;
    stop)
    killall mip6d

    ifconfig $DEV down

    # XXX: Deleting IPsec SAs can be here if you want.
    #

    # XXX: enable to send RS from kernel here if you want.
    #

        echo "Stopping MIPv6 MN."
    ;;

    *)
    echo "Usage: ${0##*/} {start|stop}"
    exit 1
    ;;
esac

exit 0

6.4.ifconfigの表示

eth0      Link encap:イーサネット  ハードウェアアドレス 00:0e:7b:d7:42:6d  
          inetアドレス:133.20.160.229  ブロードキャスト:133.20.160.255  マスク:255.255.255.0
          inet6アドレス: fe80::20e:7bff:fed7:426d/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:238 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:40 エラー:0 損失:0 オーバラン:0 キャリア:0
          衝突(Collisions):0 TXキュー長:1000 
          RXバイト:14594 (14.2 KB)  TXバイト:4863 (4.7 KB)
          割り込み:16 

ip6tnl1   Link encap:不明なネット  ハードウェアアドレス 20-01-02-00-00-00-84-50-00-00-00-00-00-00-00-00  
          inet6アドレス: 2001:200:0:8450::72/128 範囲:グローバル
          inet6アドレス: fe80::20e:7bff:fed7:426d/64 範囲:リンク
          UP POINTOPOINT RUNNING NOARP  MTU:1460  メトリック:1
          RXパケット:0 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:0 エラー:0 損失:0 オーバラン:0 キャリア:0
          衝突(Collisions):0 TXキュー長:0 
          RXバイト:0 (0.0 B)  TXバイト:0 (0.0 B)

lo        Link encap:ローカルループバック  
          inetアドレス:127.0.0.1  マスク:255.0.0.0
          inet6アドレス: ::1/128 範囲:ホスト
          UP LOOPBACK RUNNING  MTU:16436  メトリック:1
          RXパケット:1367 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:1367 エラー:0 損失:0 オーバラン:0 キャリア:0
          衝突(Collisions):0 TXキュー長:0 
          RXバイト:68388 (66.7 KB)  TXバイト:68388 (66.7 KB)

sit0      Link encap:IPv6-in-IPv4  
          inet6アドレス: 2002:8514:a0e5::1/16 範囲:グローバル
          inet6アドレス: ::133.20.160.229/96 範囲:Compat
          inet6アドレス: ::127.0.0.1/96 範囲:不明
          UP RUNNING NOARP  MTU:1480  メトリック:1
          RXパケット:0 エラー:0 損失:0 オーバラン:0 フレーム:0
          TXパケット:0 エラー:0 損失:0 オーバラン:0 キャリア:0
          衝突(Collisions):0 TXキュー長:0 
          RXバイト:0 (0.0 B)  TXバイト:0 (0.0 B)

6.5.routeの表示

カーネルIPv6 経路テーブル
Destination                    Next Hop                   Flag Met Ref Use If
::/0                           ::                         !n   -1  1     4 lo
::/96                          ::                         Un   256 0     1 sit0
2001:200:0:8450::72/128        ::                         U    256 0     0 ip6tnl1
2002::/16                      ::                         U    256 0     0 sit0
fe80::/64                      ::                         U    256 0     0 eth0
fe80::/64                      ::                         U    256 0     0 sit0
fe80::/64                      ::                         U    256 0     0 ip6tnl1
::/0                           ::192.88.99.1              UG   1   0     0 sit0
::/0                           ::                         !n   -1  1     4 lo
::1/128                        ::                         Un   0   1     1 lo
::127.0.0.1/128                ::                         Un   0   1     0 lo
::133.20.160.229/128           ::                         Un   0   1     0 lo
2001:200:0:8450::72/128        ::                         Un   0   1     0 lo
2002:8514:a0e5::1/128          ::                         Un   0   1     0 lo
fe80::/128                     ::                         Un   0   1     0 lo
fe80::/128                     ::                         Un   0   1     0 lo
fe80::20e:7bff:fed7:426d/128   ::                         Un   0   1     0 lo
fe80::20e:7bff:fed7:426d/128   ::                         Un   0   1     0 lo
ff00::/8                       ::                         U    256 0     1 eth0
ff00::/8                       ::                         U    256 0     0 sit0
ff00::/8                       ::                         U    256 0     0 ip6tnl1
::/0                           ::                         !n   -1  1     4 lo

6.6.mip6dログ

mip6d[7293]: MIPL Mobile IPv6 for Linux v2.0.2-umip-0.4 started (Mobile Node)
Thu Jan 15 16:37:51 main: MIPL Mobile IPv6 for Linux started in debug mode, not detaching from terminal
Thu Jan 15 16:37:51 conf_show: config_file = /usr/local/etc/mip6d-mn.conf
Thu Jan 15 16:37:51 conf_show: vt_hostname = localhost
Thu Jan 15 16:37:51 conf_show: vt_service = 7777
Thu Jan 15 16:37:51 conf_show: mip6_entity = 1
Thu Jan 15 16:37:51 conf_show: debug_level = 10
Thu Jan 15 16:37:51 conf_show: debug_log_file = stderr
Thu Jan 15 16:37:51 conf_show: PolicyModulePath = [internal]
Thu Jan 15 16:37:51 conf_show: DefaultBindingAclPolicy = 0
Thu Jan 15 16:37:51 conf_show: NonVolatileBindingCache = disabled
Thu Jan 15 16:37:51 conf_show: KeyMngMobCapability = disabled
Thu Jan 15 16:37:51 conf_show: UseMnHaIPsec = enabled
Thu Jan 15 16:37:51 conf_show: MnMaxHaBindingLife = 60
Thu Jan 15 16:37:51 conf_show: MnMaxCnBindingLife = 420
Thu Jan 15 16:37:51 conf_show: MnRouterProbes = 1
Thu Jan 15 16:37:51 conf_show: MnRouterProbeTimeout = 0.000000
Thu Jan 15 16:37:51 conf_show: InitialBindackTimeoutFirstReg = 1.500000
Thu Jan 15 16:37:51 conf_show: InitialBindackTimeoutReReg = 1.000000
Thu Jan 15 16:37:51 conf_show: UseCnBuAck = disabled
Thu Jan 15 16:37:51 conf_show: DoRouteOptimizationMN = disabled
Thu Jan 15 16:37:51 conf_show: MnUseAllInterfaces = disabled
Thu Jan 15 16:37:51 conf_show: MnDiscardHaParamProb = disabled
Thu Jan 15 16:37:51 conf_show: SendMobPfxSols = enabled
Thu Jan 15 16:37:51 conf_show: OptimisticHandoff = disabled
Thu Jan 15 16:37:51 conf_show: SendMobPfxAdvs = enabled
Thu Jan 15 16:37:51 conf_show: SendUnsolMobPfxAdvs = enabled
Thu Jan 15 16:37:51 conf_show: MaxMobPfxAdvInterval = 86400
Thu Jan 15 16:37:51 conf_show: MinMobPfxAdvInterval = 600
Thu Jan 15 16:37:51 conf_show: HaMaxBindingLife = 262140
Thu Jan 15 16:37:51 conf_show: DoRouteOptimizationCN = disabled
Thu Jan 15 16:37:51 xfrm_cn_init: Adding policies and states for CN
Thu Jan 15 16:37:51 xfrm_mn_init: Adding policies and states for MN
Thu Jan 15 16:37:51 conf_home_addr_info: HoA address 2001:200:0:8450:0:0:0:72
Thu Jan 15 16:37:51 conf_home_addr_info: HA address 2001:200:0:8450:0:0:0:1
Thu Jan 15 16:37:51 __tunnel_add: created tunnel ip6tnl1 (5) from 2001:200:0:8450:0:0:0:72 to 2001:200:0:8450:0:0:0:1 user count 1
Thu Jan 15 16:37:51 conf_home_addr_info: Home address 2001:200:0:8450:0:0:0:72
Thu Jan 15 16:37:51 flag_hoa: set HoA 2001:200:0:8450:0:0:0:72/128 iif 5 flags 12 preferred_time 4294967295 valid_time 4294967295
Thu Jan 15 16:37:51 conf_home_addr_info: Added new home_addr_info successfully
Thu Jan 15 16:37:51 __md_discover_router: discover link on iface eth0 (2)
mip6d[7293]: Interface 3 (sit0):type 776 unsupported
Thu Jan 15 16:37:55 __md_discover_router: discover link on iface eth0 (2)
Thu Jan 15 16:37:59 __md_discover_router: discover link on iface eth0 (2)
Thu Jan 15 16:38:03 __md_discover_router: discover link on iface eth0 (2)
Thu Jan 15 16:38:07 __md_discover_router: discover link on iface eth0 (2)
^Cmip6d[7293]: terminated (SIGINT)
Thu Jan 15 16:38:08 terminate: got SIGINT, exiting
Thu Jan 15 16:38:08 flag_hoa: set HoA 2001:200:0:8450:0:0:0:72/128 iif 5 flags 80 preferred_time 4294967295 valid_time 4294967295
Thu Jan 15 16:38:08 __tunnel_del: tunnel ip6tnl1 (5) from 2001:200:0:8450:0:0:0:72 to 2001:200:0:8450:0:0:0:1 user count decreased to 0
Thu Jan 15 16:38:08 __tunnel_del: tunnel deleted
Thu Jan 15 16:38:08 xfrm_mn_cleanup: Deleting policies and states for MN
Thu Jan 15 16:38:08 xfrm_cn_cleanup: Deleting policies and states for CN
mip6d[7293]: MIPL Mobile IPv6 for Linux v2.0.2-umip-0.4 stopped (Mobile Node)