LoginSignup
4
4

More than 3 years have passed since last update.

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

Last updated at Posted at 2018-11-10

注意点

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

関連記事
- NAT 配下の IPv4 環境から SoftEther で繋いだ Conoha VPS 経由で IPv6 を使う

はじめに

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

イメージ図

タイトルなし.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
01_vpn_localbridge.PNG
02_openwrt_softether.PNG
03_openwrt_localbridge.PNG
27_openwrt_softether_cascade.PNG
05_openwrt_software.PNG
06_openwrt_startup.PNG
07_openwrt_interface.PNG
08_openwrt_wan6.PNG
09_openwrt_wan6_physical_settings.PNG
10_openwrt_lan_dhcp_ipv6.PNG
11_vps_ifconfig.PNG
12_openwrt_ifconfig.PNG
13_openwrt_ping.PNG
14_vps_ping.PNG
15_vps_ipv6_route.PNG
16_openwrt_ipv6_route.PNG
17_win10_ipconfig.PNG
18_kame.PNG
19_ipv6test.PNG
20_testipv6.PNG
21_dslreports.PNG
22_openwrt_status.PNG
IMG_1216.PNG
IMG_1217.PNG
IMG_1218.PNG
IMG_1219.PNG
IMG_1220.PNG
IMG_1221.PNG
IMG_1222.PNG
23_tracert_ipv6.PNG
24_tracert_ipv4.PNG
25_conoha_traceroute6.PNG

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4