OpenWRTでV6プラス(MAP-E)に接続する

前提条件

  • OpenWRT 19.07.4 r11208-ce6496d796 (WSR-1166DHP)
  • WAN6 に IPv6-PD が表示されている(/openwrt-ipv6-to-lan-without-hikari-denwa/)
  • プロバイダは so-net、V6 プラスオプションを契約済み

手順

本当なら Luci で設定…と行きたいところだが、Javascript エラーで設定できない。

修正自体はされているようなので次のリリースでは治りそう(だと思われる)

map パッケージインストール

ここだけは Web からできる。

System-Software から map パッケージをインストールする。

MAP-E パラメータの計算

http://ipv4.web.fc2.com/map-e.html

MAP-E 接続に必要なパラメータ類は IPv6 に割り当てられたアドレスから算出できる。

自分の IPv6 アドレスを入力して算出してもらう。

MAP-E インターフェイスの設定

ここからは SSH 等で OpenWRT に接続する必要がある。

/etc/config/network の設定

/etc/config/network に以下を追記する。これにより mape インターフェイスが作成される。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
config interface 'mape'
option proto 'map'
option type 'map-e'
option mtu '1424'
option encaplimit 'ignore'
list tunlink 'ONU6' # ONU6は当方環境。通常はWAN6
# ↑ここまで固定
# ↓ここからは算出結果の下に書いてあるのをコピペ
# ↓この設定をコピペしても動かない
option peeraddr '2404:9200:225:100::64'
option ipaddr '106.72.0.0'
option ip4prefixlen '15'
option ip6prefix '240b:10::'
option ip6prefixlen '31'
option ealen '25'
option psidlen '8'
option offset '4'

編集が終わったら

uci commit /etc/config/network

で設定を反映させる。

/etc/config/firewall

mape インターフェイスがどこにも属していないので WAN グループに属させる

1
2
3
4
5
6
7
8
config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
option network 'wan wan6 ONU ONU6 mape' # この行に mape を追加

uci commit /etc/config/firewall で反映させる

map.sh

MAP-E の細かい設定等を入れる。

参照 → https://gist.github.com/anonymous/0fdec75fa20a7f1ce4806391d6b0429b

ここでコメントを入れている人は本件の修正を入れてくれた人。ありがたい。

/lib/netifd/proto/map.sh.orig /lib/netifd/proto/map.sh を編集

変更箇所

1
2
3
4
`# uncomment for legacy MAP0 mode
#export LEGACY=1
# コメントアウトされているので外す
export LEGACY=1
1
2
3
`json_add_boolean connlimit_ports 1
# json_add_boolean -> string
json_add_string connlimit_ports "1"

これは uci commit 不要

MAP-E インターフェイスの開始

ここからは Luci で操作できる。(設定変更はできないが見ることはできる)

Network-Interface から mape を Restart させると接続されるはず。

また、接続されると自動的にデフォルトゲートウェイが MAP-E に向く。

うまく接続されない場合は、SSH から logread -f をすることでログを見ながら

MAP-E を Restart するとなにかエラーがでるはず。

残っている問題等

Local address not yet configured!

MAP-E を接続した際に上記メッセージが複数(8 個くらい)表示されるが接続されているので

とりあえず無視。

一部サイトが見れない

ここのブログ主と同じく、一部のサイトへの接続が失敗したり、すごく遅かったりする。

https://blog.misosi.ru/2019/12/14/openwrt-v6plus-stuck/

具体的には上記ブログの内容からだが、

その他、Skype のログインが遅くなる、音声がおかしくなる等…
OpenWRT での MAP-E 接続はまだ色々とあるのかもしれない。

参考資料