アーカイブ

6rd設定方法(CentOS5.5編)

さくらの6rd(トライアル)>6rd設定方法(CentOS5.5編)

ここでは、CentOS5.5における6rdの設定方法について説明します。
※ 設定前にトップページの「提供条件」を必ずお読みください。

カーネルとiprouteパッケージの入れ替え

CentOS5.5標準のカーネルとiprouteパッケージは6rdに対応していませんが、銀座堂の浅間さんが6rdに対応するパッチをあてたRPMパッケージを作成されています。ここでは、そのパッケージをインストールして6rdをサポートする方法について説明します。

まずはパッケージをダウンロードします。

# wget http://enog.jp/~masakazu/6rd/kernel-2.6.18-238.9.1.el5.6rd.x86_64.rpm
# wget http://enog.jp/~masakazu/6rd/iproute-2.6.18-11.6rd.x86_64.rpm

ファイルが壊れていないか確認します。ハッシュ値が以下のように表示されれば問題ありません。

# sha1sum kernel-2.6.18-238.9.1.el5.6rd.x86_64.rpm
fb0902bd51a2e19e5575a7583cd7f7523d933d2d  kernel-2.6.18-238.9.1.el5.6rd.x86_64.rpm
# sha1sum iproute-2.6.18-11.6rd.x86_64.rpm
e69d4de62faf8f1415db6d1ea29637e6416eaf1b  iproute-2.6.18-11.6rd.x86_64.rpm

インストールします。

# rpm -ivh kernel-2.6.18-238.9.1.el5.6rd.x86_64.rpm
# rpm -Uvh iproute-2.6.18-11.6rd.x86_64.rpm

インストールしたカーネルとiprouteパッケージが自動的にアップデートされないように、yumの設定を行います。

# vi /etc/yum.conf    (以下の行をファイルの最後に追加する)
exclude=kernel*,iproute

再起動します。

# reboot

再起動後にカーネルのバージョンと、ipコマンドが6rdをサポートしていることを確認します。

# uname -a
Linux centos55-3 2.6.18-238.9.1.el5.6rd #1 SMP Thu May 19 14:36:34 JST 2011 x86_64 x86_64 x86_64 GNU/Linux

# ip tunnel help
Usage: ip tunnel { add | change | del | show | 6rd } [ NAME ]
<省略>
カーネルのバージョンに6rdと表示されていることと、ipコマンドのヘルプに6rdと表示されていることが確認できれば成功です。

6rdの設定を行う

設定手順は以下の通りです。ここでは、59.106.69.119のIPv4アドレスをもったCentOS5.5での設定例を紹介します。
  1. IPv6アドレスの算出

    以下のように、IPv4アドレスをスペース区切りで引数に指定します。

    # printf "2001:e41:%02x%02x:%02x%02x::1\n" 59 106 69 119
    2001:e41:3b6a:4577::1
  2. /etc/sysconfig/network-scripts/ifcfg-sit1 ファイルの作成

    viでファイルを開き、以下の内容を追加します。青文字の部分はそれぞれの環境に合わせて書き換えてください。

    # vi /etc/sysconfig/network-scripts/ifcfg-sit1
    DEVICE=sit1
    IPV6INIT=yes
    IPV6_MTU=1280
    IPV6_DEFAULTGW=::61.211.224.125
    IPV6TUNNELIPV4=any
    IPV6TUNNELIPV4LOCAL=59.106.69.119
    IPV6ADDR=2001:e41:3b6a:4577::1/32
  3. /etc/rc.local ファイルの編集

    起動時にipコマンドで上記で作成したトンネルインターフェイスsit1に対して6rd-prefixオプションを設定します。

    # vi /etc/rc.local  (以下をファイルの末尾に追加)
    ip tunnel 6rd dev sit1 6rd-prefix 2001:e41::/32
  4. 再起動

    設定を反映させるために一度再起動します。

    # reboot
  5. 設定反映を確認

    起動後に設定が反映されていることを確認します。

    # ifconfig sit1
    sit1      Link encap:IPv6-in-IPv4
              inet6 addr: 2001:e41:3b6a:4577::1/32 Scope:Global
              inet6 addr: ::59.106.69.119/128 Scope:Compat
              UP RUNNING NOARP  MTU:1480  Metric:1
              RX packets:86901 errors:0 dropped:0 overruns:0 frame:0
              TX packets:44943 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:111117120 (105.9 MiB)  TX bytes:4188327 (3.9 MiB)
    
    # ip tunnel show
    sit0: ipv6/ip  remote any  local any  ttl 64  nopmtudisc
    sit1: ipv6/ip  remote any  local 59.106.69.119  ttl 64  6rd-prefix 2001:e41::/32
    
    # ip -6 route show | grep default
    default via ::61.211.224.125 dev sit1  metric 1  expires 21320507sec mtu 1280 advmss 1220 hoplimit 4294967295