[MAP-E] v6プラス「固定IPサービス」をRouterboardで設定してみた。

Pocket

v6プラス「固定IPサービス」 | サービス紹介 | JPNE | 日本ネットワークイネイブラー株式会社

最近はISPが提供するNTTフレッツを使用したIPv4 PPPoEなサービスでは、特定の時間での速度の低下がよく聞かれますが、それを回避する手段として、IPv6な回線にオフロードする手段が取り上げられるようになりました。

IIJなどが提供するDS-liteや、JPNEが提供するMAP-E(v6プラス)などがあります。

DS-liteなどはIPv4 over IPv6トンネルが設定できるルータであれば使用できるようで、結構YAMAHA RTXやNEC IXなどの設定が散見されます。

一方でMAP-E(v6プラス)ですが、サービス提供方法が特殊なせいで、設定できるルータが限定されています。ひかり電話を使用していればHGWがあるのでどれでも使用できますが、余計なランニングコストがかかってしまいます。

ですが、なんやら特定の条件?でv6プラスについては、固定IPサービスが使用できるようです。そして、この場合であれば、IPv4 over IPv6トンネルが設定できるルータであれば使用できるのです。

追記アリ(2017-11-12):

まぁ、すでにRouterboardを使用してIPv4 over IPv6トンネルを設定した方法での手順については、公開されている方々がいらっしゃいます。
RouterBoardでDS-Liteの設定をしてみた
まったりlog残し – RouterboardでiijmioのIPv6 IPoE(ネイティブ接続) + DS-Lite(Dual Stack Lite)を体験する

こちらの方々はIIJのDS-liteの場合です。筆者の場合はv6プラスを使用した環境で設定できたので、備忘録として残しておこうと思います。

といっても、IPv4 over IPv6を使用していることには代わりはないので、とくに目新しいことはありません。

上で上げている方々は基本的にGUI(wegfig)での設定のようなので、今回はCLIで設定をした場合にしようかと思います。

ちなみに筆者の環境は、【ひかり電話を契約している場合:DHCPv6-PD】なので、HGWを使用していない場合は若干違う可能性があります。

1.LAN設定

/ip address
add address=192.168.88.1/24 interface=bridge1 network=192.168.88.0

2. BRとのIPIPv6トンネルの接続のためのIPv6アドレス設定

/ipv6 pool
add name=pool1 prefix=200x:xxxx:xxxx:xxxx::/60 prefix-length=64 (接続形態によって、prefix lengthが違うと思います)

/ipv6 address
add advertise=no from-pool=pool3 interface=ether1 address=::(インターフェイスID)/64

3. JPNE-BRへの接続設定

/interface ipipv6
add dscp=0 !keepalive local-address=:: name=ipipv6-tunnel1 remote-address=(BRのIPv6アドレス)

4. IPIPv6トンネルの内側へのIPv4アドレスの設定

/ip address
add address=(固定IPv4アドレス) interface=ipipv6-tunnel1 network=(固定IPv4アドレス)

5. NAT設定

/ip firewall nat 
add action=masquerade chain=srcnat comment="NAT ipipv6" out-interface=ipipv6-tunnel1 

/ip firewall mangle 
add action=change-mss chain=forward comment="Clamp MSS to PMTU" new-mss=clamp-to-pmtu passthrough=yes \ 
protocol=tcp tcp-flags=syn

/ipv6 firewall mangle 
add action=change-mss chain=forward comment="Clamp MSS to PMTU" new-mss=clamp-to-pmtu passthrough=yes \ 
protocol=tcp tcp-flags=syn

6. DHCP設定

/ip dhcp-server
add address-pool=dhcp_pool1 disabled=no interface=bridge1 name=dhcp1
/ip dhcp-server network
add address=192.168.88.0/24 gateway=192.168.88.1

7. 経路設定

/ip route
add check-gateway=ping distance=1 gateway=ipipv6-tunnel1

/ipv6 route
add dst-address=::/0 gateway=ether1 check-gateway=ping type=unicast distance=1 

7. DNS設定

/ip dns
set allow-remote-requests=yes cache-size=50000KiB max-concurrent-queries=200 \
    max-concurrent-tcp-sessions=40 servers=208.67.222.222,208.67.220.220,2620:0:ccc::2,2620:0:ccd::2

 

上記に記載した設定については、あくまで最低限のものになります。

見てわかりますように、/ip firewall filter/ipv6 firewall filterの設定がありません。基本的にはIPv4についてはPPPoEで接続していたときの設定が使用できると思います。ただし、in-interfaceなどを使用している場合は、all pppなどを使用していないことを確認してください。今回の場合はPPPoEなどでの設定ではないので、all pppなどを使用していると、そのルールは使用されません。

IPv6については、特にベーシックなものから変更や特別に追記するようなルールは無いはずです。(筆者のほうで記憶違いがありましたらご指摘ください。)

筆者の場合は、通常のIPv4 PPPoE → IPv4 PPPoE + IPoE → v6プラス →v6プラス固定IPサービス と、どんどんとネットワーク環境を切り替えてきたため設定を昔から引き継いでおり、秘伝のタレと化していたことがちょっとハマりどころでした。というのも、/ip firewall natmangleに設定していたパラメータが悪さをしており、パケットがLANからWANへ飛ぶものの、replyが返ってこないという状況でした。(これで3週間ほど悩んでおりました。)

これでPingやtracerouteなどを使用していただくと、外への通信が可能になるかと思います。

以下のWebサイトなどを使用していただくと、IPv6のISPがJPNEになっていることを確認できるかと思います。

IPv6 test – IPv6/4 connectivity and speed test

ということで、RouterboardもDS-liteおよびv6プラス固定IPサービスに(非公式ながら)対応していますよ、という内容になります。(まぁRFCに規定されているの設定はできるはずです)

ここの内容間違っているよ、や、ここがよく分からない、などありましたら、コメントやTwitterなどでご連絡いただければ、なるべくご回答するようにいたします。

 

その他、公式で対応しているよ、というメーカ様の設定Webサイトは以下になります。

IPIPトンネリング

v6プラス「固定IPサービス」 設定ガイド : UNIVERGE IXシリーズ | NEC

古河電工ネットワーク機器 [FITELnet]:FITELnet-Fシリーズ F60:設定例

Pocket