KAMEには、IPv6 -> IPv4 のTCPリレーを行う、faith というインタフェースが備わっています。これを利用すれば、IPv4上のサービスをIPv6から利用することができるようになります。
アドレスは、faith用にアドレスブロックをキープしておいて、その下位32ビットに転送先のIPv4アドレスを割り振ったものになります。
- faithはIPv6/IPv4デュアルスタックのルータ上で動かすこと。
- 以下出てくるコマンドはIPv6対応(/usr/local/v6以下)のコマンドを使うこと。
- カーネルの構築
pseudo-device faith 1
を定義してカーネルを構築し、このカーネルで起動します。
- faithを有効にする
# sysctl -w net.inet6.ip6.keepfaith=1
# ifconfig faith0 up
- static route の設定
例えば 3ffe:8020:100a:ffff::/64 をキープしたとすると、
# route add -inet6 3ffe:8020:100a:ffff:: -prefixlen 64 -interface faith0
- faithdの起動
# faithd http
とすると、httpについてリレーを行う。
- 利用
例えば、上記設定でIPv6ネットワークから 210.166.32.244 のWebを見たい場合は、
3ffe:8020:100a:ffff::d2a6:20f4
にアクセスすればよい。
この場合、Webサーバではfaithdが動いているルータからアクセスがあったようにログに残る。
注意点
このままでは、IPv6からIPv4のどこへでも中継が出来てしまう。すなわち、faithdが動作しているルータがアタックの踏み台になる恐れがあるので適切な防護措置を要する。