WiMAXでVPN

先日、emobileから乗り換えたWiMAX。自宅のPCにリモートするためにAndroidからVPNを張ってみようと考えた。安全な接続ということで、L2TP/IPsecでのVPN接続にチャレンジ。構成は、MemoPad(もしくはSO-03D)ー WM3800R(WiMAX)ー RT107e(YAMAHA)ー Windows8.1 Pro という形で、Android端末からRT107eまでVPN接続し、その先のWindows8にリモートデスクトップさせる。その備忘録

VPNに対応してる?

以前のイーモバイル端末は、ポート制限のある契約だったので、VPNを張ることは出来なかった。で、今回のWiMAXは?ということで調べて見たら、こんな記事を見つけてしまった。

IPアドレス割り当ての運用変更およびグローバルIPアドレスオプション導入について

あらっまたやっちゃったか?

しかし、一番最後に「※3 PPTPによるVPN、および他方式でもNATトラバーサルに対応したVPNは引き続きご利用いただけます。」とある。自宅のルーターは、会社のお下がりでYAMAHAさんのRT107e。NATトラバーサルに対応しているからできるかな?

VPNの準備

YAMAHAさんのページを参考にRT107eを設定してみた。

今回のパターンとしては、「複数のL2TPクライアント(アドレス不定)の接続を受け付ける場合」に相当する。

ルーター(RT107e)の設定

RT107eの場合、L2TP/IPsecに対応しているのは、ファームウェアがRev.8.03.92でないといけないので、リビジョンアップで最新版に更新しておく。

しかし、リビジョンアップしても、GUI画面ではL2TP/IPsecの設定は出来ない。。。すべてコマンドで作業をしましょう。

【経路設定】
ip route default gateway pp 1

静的経路の設定。インターネットへの接続設定ができていれば、この設定は問題なし。

【LAN設定】
ip lan1 address [ローカルIPアドレス] ip lan1 proxyarp on

lan1のIPアドレス指定(例:192.168.100.1/24)。ここも上と同じ。

ただし、「ip lan1 proxyarp on」は、通常のLAN設定では入らないので注意。これがないと外からのVPNクライアントがLAN内側の機器をみつけられない。proxyarpとは、IPアドレスからMACアドレスを解決させるプロトコル。

【プロバイダとの接続設定】
pp select 1
pp always-on on
pppoe use lan2
pp auth accept (認証方式)
pp auth myname (ユーザ名) (パスワード)
ppp lcp mru on 1454
ppp ipcp ipaddress on
ppp ipcp msext on
ppp ccp type none
ip pp mtu 1454
ip pp nat descriptor 1
pp enable 1

特にこれといった注意点はなし。GUI設定でやっておけば同じ設定ができあがる。

【L2TP接続を受け入れるための設定】
pp select anonymous
pp bind tunnel1 tunnel2 tunnel3
pp auth request (認証方式)
pp auth username (PPPユーザー名1) (PPPパスワード1)
pp auth username (PPPユーザー名2) (PPPパスワード2)
pp auth username (PPPユーザー名3) (PPPパスワード3)
ppp ipcp ipaddress on
ppp ipcp msext on
ip pp remote address pool [割り当てるLAN内のIPアドレス] ip pp mtu 1258
pp enable anonymous

不特定の端末から接続を受け付けるので、anonymousを設定する

安全性を考慮して、認証方式をmschap-v2にする。Windows8へのRDPにも関係するとか、しないとか。

tunnelが3つあるが、必要な本数だけ書けばいい。ただし、機種によって上限があるので注意。すでにtunnelの設定が他にあれば、それと被らないように数字部分を変える。

remote address pool は例えば192.168.100.10-192.168.100.20にとする。自分の環境に合わせる。

【L2TP接続で使用するトンネルの設定 (クライアントA)】
tunnel select 1
tunnel encapsulation l2tp
ipsec tunnel 101
ipsec sa policy 101 1 esp (暗号化アルゴリズム) (認証アルゴリズム)
ipsec ike keepalive use 1 off
ipsec ike local address 1 192.168.100.1
ipsec ike nat-traversal 1 on # 注釈1
ipsec ike pre-shared-key 1 text (事前共有鍵)
ipsec ike remote address 1 any
l2tp tunnel disconnect time off
l2tp keepalive use on 10 3
l2tp keepalive log on
l2tp syslog on
ip tunnel tcp mss limit auto
tunnel enable 1

anonymousで設定したユーザー数だけ用意したトンネルの設定。

暗号アルゴリズムと認証アルゴリズム。ここも安全性を考慮して3des-cbc sha-hmacとした。

残りのトンネル設定も同じ内容で。トンネル番号は変わるので、間違えないように。

ipsec tunnel 101 の101は、ポリシーID。トンネル番号ごとに変えること。

【NAT設定】
nat descriptor type 1 masquerade
nat descriptor address outer 1 ipcp
nat descriptor address inner 1 auto
nat descriptor masquerade static 1 1 192.168.100.1 esp
nat descriptor masquerade static 1 2 192.168.100.1 udp 500
nat descriptor masquerade static 1 3 192.168.100.1 udp 4500

これがないとVPNを張ることができません。NATやIPマスカレードについては、説明が長くなるので割愛。

設定丸写しで問題ない。ただし、NAT ディスクリプタ番号(ここでは1)は自分の環境にあわせて変えること。

【IPsecのトランスポートモード設定】
ipsec transport 1 101 udp 1701
ipsec transport 2 102 udp 1701
ipsec transport 3 103 udp 1701
ipsec auto refresh on

同じく必須です。

【DNSの設定】
dns server (ISPより指定されたDNSサーバーのIPアドレス)
dns private address spoof on
【L2TP設定】
l2tp service on

dns serverは、プロバイダ接続の設定に問題なければ既に存在しているはず。

dns private address spoof onが抜けないように

最後にL2TPを有効にします。

これで準備は完了。概ねヤマハさんのルーターなら、設定方法は同じなようです。


追記(2014/01/08)

プロバイダ接続しているPP1にルーター宛のパケットを通すフィルタ設定が抜けていました。以下のコマンドでフィルタを追加して設定します。最後にsaveを忘れずに。

pp select 1
ip pp secure filter in ... 200080 200081 200082 200083 ...
ip filter 200080 pass * 192.168.100.1 esp * *
ip filter 200081 pass * 192.168.100.1 udp * 500
ip filter 200082 pass * 192.168.100.1 udp * 4500
ip filter 200083 pass * 192.168.100.1 udp * 1701

フィルター番号は自分の環境にあったものにしてください。


ただし、L2TP/IPSecに対応していないNVR500ではムリです。今回は既に生産終了となっているRT107eを使用していますが、RTX810なら実売4万円~5万円ぐらいでしょうか。

私的には、同じく生産終了のSRT100の中古あたりがお勧めですが。お金に余裕があればFWX120がいいですね。

ヤマハ イーサアクセスVPNルーター RT107e

中古価格
¥4,580から
(2013/12/27 21:23時点)

ヤマハ ファイアウォールルーター SRT100

中古価格
¥11,930から
(2013/12/27 21:24時点)

ヤマハ ファイアウォール FWX120

新品価格
¥55,085から
(2013/12/27 21:22時点)

ヤマハ ギガアクセスVPNルーター RTX810

新品価格
¥46,851から
(2013/12/27 21:22時点)

Wifiルーター(WM3600R)の設定

Android側になるWiMAXのWifiルーターの設定をします。私はNECのWM3800Rを使用していますが、IPsecパススルーの設定にチェックを入れるだけです。

wm3800r-vpn

「詳細設定」ー「その他の設定」ー「VPN設定」で「IPsecパススルー機能」で「使用する」にチェックを入れます。

Android(MemoPad HD7など)の設定

Androidにはじめから備わっているVPN接続設定を使います。端末によっては対応していないものもあるそうな。

memopad-Settei

設定メニューの「無線とネットワーク」にある「その他...」をタップ。

memopad-vpn

「VPN」をタップ

memopad-createvpn

画面右上にある「+」をタップ

memopad-profvpn

「VPNプロフィールの編集」画面で、

  • 名前:適当にわかりやすいもの
  • タイプ:L2TP/IPsec PSK を選択
  • サーバーアドレス:ルーターのIPかドメイン名。固定がなければDDNSで。
  • IPSec事前共有鍵:なるべく複雑なものを

上記以外は入力不要。保存をタップ。

VPN接続開始

memopad-createdvpn

保存すると、リストができあがっているので、それをタップして接続開始。

memopad-typename

ルーターに設定しているユーザー名とパスワードを入力。

memopad-vpnconnecting

接続中と表示されるので、しばらく待つ。

memopad-vpnsuccess

接続されました。と表示されれば成功!

なんの問題もなくあっさり接続できたVPN

次は、RDPでWindows8.1に接続だ。しかし、今日は疲れたので次回。

今回使用したグッズ&おすすめグッズ

おすすめの記事