OpenBlockS 600を6to4ゲートウェイルーターとして利用する
さて、この6to4ノードとなったOpenBlockS 600を、起動時に6to4ゲートウェイルーターとなるように設定してみよう。IPv6パケットのフォワーディングを行うためには、以下の2箇所を設定する。
- 「/etc/lkm.conf」に「ipv6」を追加する
- 「/etc/rc.conf」に「ip6mode=router」を追加する
前者は、起動時に「ipv6」カーネルモジュールを読み込むものだ。あらかじめipv6モジュールを読み込んでおかないとrc.conf内においてIPv6関連機能の設定が行われず、「ip6mode=router」が有効にならない。これは再起動を行うと設定が反映される。
さて、これでOpenBlockS 600が6to4ゲートウェイルーターになってくれたはずである。テストを行ってみよう。
IPv6では各種設定の自動化を行うための仕組みが用意されており、今回のような場合、OpenBlockS 600上でRouter Advertisement Daemon(Linux向けの実装としてはradvdがある)を動作させ、クライアント側でRouter Advertisementを受けるよう設定することで、自動的に適切なアドレス/ルーティングテーブルがセットされるようになるのだが、残念ながら現時点ではOpenBlockS 600向けのパッケージは用意されていない。今回はLinuxがインストールされているクライアントPCの設定を手動で行ってテストを行ってみよう。ここではOpenBlockS 600のETHER-1(eth1)と、テスト用のPCのイーサネットポートが接続されているものとする。
まず、OpenBlockS 600のeth1にIPv6アドレスを割り当てておく。
# ip addr add 2002:7c29:4693:1::1/64 dev eth1
クライアント側PC側にもIPv6アドレスを割り当てて、IPv6のデフォルトゲートウェイをOpenBlockS 600に割り当てたIPv6アドレスに設定しておく。
# ip addr add 2002:7c29:4693:1::2/64 dev eth0 # ip route add ::/0 via 2002:7c29:4693:1::1 dev eth0
以上で設定は終了である。クライアントPCからIPv6パケットを投げてみて、通信できることを確認しよう。
6to4は基本的に6to4リレールーターへパケットが流れるトンネリング方式なため、IPv6のNativeな通信と比較すると遅延が大きくなることや、RFC3964においてセキュリティ上の懸念点も指摘されており、本格的な運用には向かない。しかしIPv4からIPv6への移行の過渡期においては、手軽に扱えることから有効な手段となるだろうと思う。
まとめ
今回は、OpenBlockS 600で利用できるネットワーク関連機能について、一般的に必要と思われる設定を紹介してきた。もちろん、これら以外にも活用方法は考えられる。たとえば次のようなものが挙げられるだろう。
- ブリッジ(L2ブリッジングやetablesを利用したL2フィルタ)
- IPSec、PPTPやPacketiXなどを使ったVPN(ただし、IPSecやPPTP関連のツールが現時点ではアプリケーションマネージャに用意されていないため、自力でのツール類の準備が必要。一方PacketiXはアプリケーションマネージャにて有償で提供されている)
- tcを使ったトラフィックコントロール(いわゆるQoS、帯域制御や遅延制御、ロードバランスなど)
これらさまざまな機能に関しても、通常Linuxを利用する感覚でコマンドラインから設定することで利用可能だ。
