IIJmio FiberAccess/NF回線(ひかり電話契約無し)で、IPv4 over IPv6(DS-Lite)をSEIL/x86で使うためのconfig

2014/10/1、IIJIIJmio FiberAccess/NFサービスにおいて、IPv4 over IPv6技術(DS-Lite)を用いたIPv4接続機能の提供を開始した。*1

DS-Liteの詳細については、IIJのエンジニアによる公式blogで詳しく解説されている。http://techlog.iij.ad.jp/archives/1254
また、SEIL/x86にDS-Liteを利用する方法については、SEILブログhttp://www.seil.jp/blog/ds-liteにて設定のポイントが公開されている。
上記の通り設定すればDS-Liteは使えるようになるが、LAN内のクライアントがインターネット上のIPv6ホストへ直接通信を行うことができない。

これは、フレッツ光ネクスト回線にて「ひかり電話の契約がある場合」を前提にしているためであり(「SEIL で NGN IPv6 ネイティブ (IPoE) 接続を試す」http://www.seil.jp/blog/10)、ひかり電話契約無しの場合とはネットワークの構成が異なるためである。

このため、ひかり電話契約無しの場合、LAN内のクライアントでIPv6を使ってインターネットへの接続を維持したければ、IPv4についてはtunnelでDS-Liteを利用してdefault routeをtunnelに向けるという構成にしつつ、IPv6についてはlan0とlan1をブリッジする必要がある。

ここではまるポイントとしては、SEILの「bridgeを有効にした場合、イーサネットフレームは lan0 側で受信する」という仕様である。
このため、IPv6をブリッジした場合は、公式で公開されている「SEIL/x86にDS-Liteを利用する方法」の設定でlan1が設定されているいくつかの個所をlan0に変更する必要がある。

というわけで、最低限の設定をまとめてみた。
(フィルタは別途必要に応じて拒否設定。許可すべき個所のみ記載)

hostname "seil"
timezone "Japan"
interface lan0 description INTRANAL
interface lan0 add 192.168.0.1/24
interface lan0 add router-advertisement
interface lan0 description FLETS-NGN
interface tunnel0 tunnel dslite gw.transix.jp
interface tunnel0 mtu 1500
bridge enable
bridge ip-bridging off
bridge ipv6-bridging on
bridge default-bridging off
route add default tunnel0
route6 add default router-advertisement interface lan0
filter add OUTGOING interface tunnel0 direction out action pass state enable logging off enable
filter6 add DSLite interface lan1 direction in/out action pass protocol 4 state disable logging off enable
dhcp enable
dhcp mode server
dhcp interface lan0 enable
dhcp interface lan0 expire 24
dhcp interface lan0 pool 192.168.0.2 253
dhcp interface lan0 dns add 192.168.0.1
dhcp6 client enable
dhcp6 client interface lan0
dns forwarder enable
dns forwarder add dhcp6
resolver enable
resolver address add dhcp6
rtadvd disable