前回の記事 ( MAP-Eあれこれ - Motoyuki's blog ) の続き。
MAP-EでのIPv4固定アドレスサービス
MAP-Eは複数ユーザで1つのIPv4アドレスの共有を可能にする仕組みですが、 1ユーザで1~8つの固定IPv4アドレスを提供するプロバイダもあります。 この場合、MAP-Eはポート変換を行わない単なるIPv4 over IPv6トンネルとして機能します。
つまり、IPv4 over IPv6トンネルのユーザ側 MAP CE (Customer Edge) と、 プロバイダ側 MAP BR (Border Relay) の2つのIPv6アドレスがわかれば FreeBSDの gif(1) が使えるはずです。
MAP CEのIPv6アドレスはIPv6 prefixなどから計算されますが、 この部分はRFC 7597の非公開のInternet draftに基づいているため、ネットを検索すると https://ipv4.web.fc2.com/map-e.html のサイトを参照しろという記事を多く見かけるわけですが、
OCN光 IPoE 固定IPv4アドレスサービスの場合
筆者はOCN光 IPoE IP8を契約してルータとしてYAMAHA NVR700-Wを利用していますが、
ルータの
show status tunnel
コマンドで得られるMAP CEのIPv6アドレスと、
https://ipv4.web.fc2.com/map-e.html
のサイトで計算されるアドレスが異なるわけです。
ということで前回の記事 ( MAP-Eあれこれ - Motoyuki's blog ) に戻って Internet draft に基づいて MAP CE のアドレスを計算すると(draftの Example 4そのまま)、
IPv6 prefixが
xxxx:xxxx:xxxx:xxxx::/56
IPv4固定アドレスが
192.0.2.1 (0xc0000201)
の場合、MAP CEのIPv6アドレスは
xxxx:xxxx:xxxx:xxxx:00c0:0002:0100:0000
となります。この値はYAMAHAのルータと同じでした。
OCN光IPoE IP8ではプロバイダ側からの説明にMAP BRアドレスの情報があるので、 これでMAP-EのIPv4 over IPv6トンネルの両端のIPv6アドレスがわかったことになります。
アドレス解決システム
NTTのフレッツ網ではIPv6 prefixは固定ではなく、メンテナンスなどの際に変わることがあります。 IPv6 prefixの変更がすぐにOCN側に通知されないという話で、IPv6 prefixが変わったときに 固定IPv4アドレスがしばらく使えなくなるようです(参考: ONU を交換したら MAP-E の固定 IPv4 が固定されなくなってしまった話 #Network - Qiita )。
この問題のために「アドレス解決システム」が用意されていて、
http(s)://[アドレス解決システムのURL]?hostname=[アドレス解決用ホスト名]
にアクセスすることでOCN側が変更を知ることができるということです。 YAMAHAのルータではLuaスクリプトでこの処理を行うようになっています。
アドレス解決システムのURLやアドレス解決用ホスト名、このURLにアクセスするための Basic認証のユーザ名とパスワードはOCN側からの説明に情報があります。
ひかり電話問題
ひかり電話対応については先人の知恵をお借りすることにします。
フレッツ光 ひかり電話を使いながら、IPoEのIPv6を自前ルータで直収する方法 - notokenの覚書
これで、FreeBSDでMAP-Eルータをつくるための情報が揃った、はずです。