LEDE+Softether+VPSでLAN内をデュアルスタック化する

# 注意点
これは去年書いて、最後まで完成できなかったメモです。
参考情報として閲覧してください。

関連記事
- [NAT 配下の IPv4 環境から SoftEther で繋いだ Conoha VPS 経由で IPv6 を使う](https://qiita.com/tongari0/items/737c3629ea4b3b81d2fa)

# はじめに
　試行錯誤の末、特定端末に対する手動設定ではなく、LEDE(OpenWRT)を使ってLAN 内の機器に対してインターネット接続可能なIPv6アドレスを自動配布することができたので、やり方を記録する。

# イメージ図

![タイトルなし.png](https://qiita-image-store.s3.amazonaws.com/0/163842/b1a55736-a71e-1a28-526f-812b1116ba5d.png)

　LEDEの入ったブロードバンドルータからSoftEtherでConoha VPSとVPN接続し、LAN向けにはRAでIPv6アドレスを配布し、NAT6アドレス変換により、IPv6インターネットにアクセスできるようにする。
　なお、IPv4インターネットはVPSを経由せず、今まで通りブロードバンドルータから直接接続する。

  PC  -----[LEDE]---(IPv4 internet)---[Conoha VPS]---(IPv6 Internet)
iPhone---/

<----lan------><---wan---><--------ipv4-------><---------ipv6--------->

# 実現したこと
　ISP からは IPv4 プライベートアドレスしか提供されていないNAT配下から、VPS経由でIPv6インターネット接続をLAN向けに提供する。

# 必要なもの
- LEDE及びSoftEther入りブロードバンドルータ　*1:自分はBuffalo WZR-HP-AG300Hを使った。中古で3000円。
- Conoha VPS 1GBプラン　*2:512MBプランだと、たまにOOM Killerが発動する。

# ステップ
- Conoha VPSにSoftetherをServerモードで導入する。
- LEDEにkmod-ipt-nat6とSoftEtherモジュールを導入する。
- LEDEのStartupから、SoftetherClientとSoftetherServerのプロセスをDisableおよびStopする。
- LEDEとVPSのSoftetherを、それぞれtapでローカルブリッジする。
- LEDEのWAN6をtapに割り付ける。→LEDEとVPS間が、リンクローカルアドレスで疎通。
- VPSのLinux KernelのIPv6ルータ機能を有効化する。
- VPSからIPv6追加アドレスを削除し、そのひとつをVPSのtapに割り当て、LEDEのtapのリンクローカルアドレス向けにIPv6スタティックルートとProxy NDPを設定する。
- LEDEのWAN6に、先程VPSでスタティックルート設定したIPv6グローバルアドレスと、デフォルトゲートウェイとしてVPSのtapのリンクローカルアドレスを設定する。→LEDEから、IPv6グローバルアドレスで疎通。
- LEDEのWAN6のIPv6で、RAをServerモードで、Proxy NDPをDisabledに、そして、IPv6 ULA-Prefixの先頭2文字を、ddに変更する。
- LEDEでNAT6シェルを配置および実行し、LAN内機器の動作確認。→LAN内からIPv6グローバルが疎通。
- うまくいったら、LEDEのStartupに設定して終了。
- Wifiを有効にする。最大10dBに設定。
- 動作確認として、亀やIPv6 testなど。

```/root/nat6.sh
#/bin/ash
line=0
while [ $line -eq 0 ]
do
	sleep 10
	line=`route -A inet6 | grep ::/0 | awk 'END{print NR}'`
done
ip6tables -t nat -I POSTROUTING -s `uci get network.globals.ula_prefix` -j MASQUERADE
route -A inet6 add 2000::/3 `route -A inet6 | grep ::/0 | awk 'NR==1{print "gw "$2" dev "$7}'`
```

# 参考にしたリンク
http://fefcc.net/archives/202
https://wordpress.tirlins.com/2015/03/setting-up-softether-vpn-on-openwrt/
http://blog.iopsl.com/ipv6-nat-with-openwrt-router/

# キャプチャ集

![00_vpn_softether.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/c511fa9b-a8d8-5f50-b2eb-123096028f6c.png)
![01_vpn_localbridge.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/9151ad0e-6d5c-7bf6-5664-3881a36bd8cd.png)
![02_openwrt_softether.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/a11be4c6-5b1c-b216-65a2-5ee01ec7f065.png)
![03_openwrt_localbridge.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/ea98fe50-6ac7-b3ee-eb7c-fff37e2a0ab4.png)
![27_openwrt_softether_cascade.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/468731e0-d499-b93c-cd1f-b9c9e35fddb9.png)
![05_openwrt_software.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/3415b98e-e8a6-38fa-099d-1144b1732183.png)
![06_openwrt_startup.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/0776fd15-5400-c024-05f6-18439c297871.png)
![07_openwrt_interface.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/39a0721f-01d4-16a0-bbb5-b5fad9d80647.png)
![08_openwrt_wan6.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/f9a9b02b-28f7-2e49-b0c1-d41931691c51.png)
![09_openwrt_wan6_physical_settings.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/e3118381-754f-ffdf-b2d1-83e21f98d49b.png)
![10_openwrt_lan_dhcp_ipv6.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/7203c576-c75c-8181-1b61-ae9764eef082.png)
![11_vps_ifconfig.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/72864170-d7a3-2bb4-b54c-be51eda58c6c.png)
![12_openwrt_ifconfig.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/2a0d0e36-fa28-c76c-7adc-b45b503f4240.png)
![13_openwrt_ping.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/6c84f46d-e91d-b4b8-bb1e-067116a67724.png)
![14_vps_ping.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/ea680670-75be-c2b9-a969-963868ec8f62.png)
![15_vps_ipv6_route.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/1760ab30-9b5f-d79f-18a3-b9197567c0ac.png)
![16_openwrt_ipv6_route.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/24af7625-d1ab-bab9-2483-5bc62bcb4a4d.png)
![17_win10_ipconfig.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/16eaae89-c4d1-f891-5034-4b455bd46c90.png)
![18_kame.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/1ad729e7-b59b-5761-5306-26efb7f3cca7.png)
![19_ipv6test.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/34aa9987-2384-3b58-02fb-1f623bbad334.png)
![20_testipv6.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/9b83e5a7-5e10-63a0-d699-3a60f39d02fa.png)
![21_dslreports.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/cbf36aa6-6e49-5247-1c36-7b9a0dae6262.png)
![22_openwrt_status.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/f94e5337-8454-e10d-835f-71f1e4a8427a.png)
<img width="414" alt="IMG_1216.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/f5339296-384b-a096-701c-453349aa9c15.png">
<img width="414" alt="IMG_1217.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/a0b714df-b086-d47d-cb95-4a8fec4d826b.png">
<img width="414" alt="IMG_1218.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/09de6e5f-37e6-252b-1d51-78d7375e37c8.png">
<img width="414" alt="IMG_1219.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/786c391c-b1bf-e052-3f09-97de7314d3a4.png">
<img width="414" alt="IMG_1220.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/9491712e-a389-90d3-ceba-73461c9923dd.png">
<img width="414" alt="IMG_1221.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/bbacf74f-adb6-25e1-70b9-cfc058520fba.png">
<img width="414" alt="IMG_1222.PNG" src="https://qiita-image-store.s3.amazonaws.com/0/163842/79325272-3850-0a69-f8d0-b1f31f4b8ac8.png">
![23_tracert_ipv6.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/e0275001-58ac-87ac-a86c-6bfeeafc7d81.png)
![24_tracert_ipv4.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/782e47e1-7e43-da6a-bc4e-9ccc39428b69.png)
![25_conoha_traceroute6.PNG](https://qiita-image-store.s3.amazonaws.com/0/163842/10035b9f-7bce-9952-c1d5-d3d7760c2313.png)