プログラミング

YAMAHAルーターでL2TP/IPsec接続のVPNを構築

こんにちは。

今回は、ヤマハのルーター(RTX1210)で、

PPPoEのONUではなく、NURO光の環境でVPNを構築した経験をしたので、その設定を書いていきたいと思います。

基本的には、ヤマハ公式の設定例を見ながら作業すれば問題なくVPNを構築できます。

公式の設定例はこちら

VPNの構築は初めてだったのですが、設定例では、PPPoEでのONUとの認証方式が多く、

NURO光ではONUとlanでヤマハルーターと接続されているため、VPN関係のプロトコルのフィルター設定がうまく動くかなぁと思っていたのですが、フィルター設定がうまく動いてくれましたので共有したいと思います。

 

ルーターへの設定例

 

以下の設定コマンドを入力します。

# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# 自分宛ではない ARP 要求に対し、ルートを知っているIPであれば、代わりに ARP 応答を返す機能
ip lan1 proxyarp on
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# anonymous接続の設定
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
pp select anonymous
# 以下で設定していきます。
# トンネルをバインド 
pp bind tunnel1-tunnel[xx] ←[xx]の部分はVPN接続させたい人数により変わる。
pp auth request mschap-v2
# ここでは、VPN接続したい人数分のユーザーを作る。
pp auth username [moto] [xxxxxxxxxxx] ←ユーザーとそのパスワードを設定する。

# ipアドレスを受け取れるようにするネゴシエーション設定
ppp ipcp ipaddress on
# MS 拡張オプションを使う設定
ppp ipcp msext on
# 全パケットの圧縮タイプ設定
ppp ccp type mppe-any
# VPN接続した際に割り当てられるIPアドレスの範囲
ip pp remote address pool 192.168.xxx.xxx-192.168.xxx.xxx
# L2TP接続を受け入れるための設定
ip pp mtu 1258
# 設定を有効化
pp enable anonymous
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# トンネル(人数分作ります)
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
tunnel select 1
# 接続方式をLT2Pに指定
tunnel encapsulation l2tp
ipsec tunnel 101
# IKEv2での鍵交換時の認証方式を指定
ipsec sa policy 101 1 esp aes-cbc sha-hmac
# キープアライブを使用しない
ipsec ike keepalive use 1 off
# 自分側のセキュリティゲートウェイのアドレスの設定
ipsec ike local address 1 [192.168.xxx.xxx] ←ルーターのlan1のIPアドレス
# NATトラバーサルを利用するための設定
ipsec ike nat-traversal 1 on
# 事前共有鍵の設定
ipsec ike pre-shared-key 1 text [xxxxxxxxxxx] ←事前共有鍵のテキスト
# 相手側のセキュリティゲートウェイのアドレスの設定(スマホやノートPCなので、アドレス不定。なのでany)
ipsec ike remote address 1 any
# L2TP トンネルの切断タイマの設定。タイマーを設定しない。
l2tp tunnel disconnect time off
# L2TP キープアライブの設定 5秒間隔で、3回届かなかったらダウン検出
l2tp keepalive use on 5 3
# L2TP キープアライブをログに出力
l2tp keepalive log on
# L2TP コネクション制御に関するログを SYSLOG に出力
l2tp syslog on
# TCPセッションのヘッダを含めない最大サイズの上限
ip tunnel tcp mss limit auto
# トンネルの有効化
tunnel enable 1
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# VPN接続用プロトコルを通すフィルター
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# IPsecのespパケットを通す設定。
ip filter 1111 pass * [192.168.xxx.xxx] esp * *
# 鍵交換にIKEというプロトコルを利用。500番ポートを使用する。
ip filter 1112 pass * [192.168.xxx.xxx] udp * 500
# L2TPコネクションの待ち受けにはUDPの1701番ポートが使用される
ip filter 1113 pass * [192.168.xxx.xxx] udp * 1701
# IPsecの、NATトラバーサルで発生するパケットを通すために必要。
ip filter 1114 pass * [192.168.xxx.xxx] udp * 4500
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# VPN接続用のプロトコルを通すフィルター設定をNUROのONUと接続しているlanへ適応(基本的にはlan2かと思います)
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ip lan2 secure filter in 1111 1112 1113 1114
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# IPsecのパケットを通過させる設定及びNATトラバーサル機能のパケットを通過させる設定
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
nat descriptor masquerade static 1 10 [192.168.xxx.xxx] udp 500,1701,4500
nat descriptor masquerade static 1 11 [192.168.xxx.xxx] eap
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# IPSecのトランスポートモード設定
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ipsec transport 1 101 udp 1701
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

# L2TPの通信を受け入れる設定
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
l2tp service on
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 

こちらを設定すればヤマハルーターへの設定は完了です。

トンネルの数は、VPN接続させたい人数によって異なります。最大数はルーターの製品ページに記載がありますので、そちらを超えない分であれば設定可能です。(RTX1210は最大100本です。)

クライアント側での設定

基本的には、ヤマハ公式の、VPNクライアントソフトウェア「YMS-VPN8」を使用して接続するのですが、

Windows10の標準的なVPN接続機能でも問題なく接続できます。

 

設定方法は追って追記します。

 

VPN接続できない時に確認で使用するコマンド

 

基本的には、上記でヤマハルーターへのVPN接続設定は完了なのですが、

接続がクライアント側から接続できない!といった場合には以下のコマンドで原因を探っていきます。

なにかエラーが出たらログを確認するのが基本ですね!

# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# ログの確認。ログが長いと最新のログを確認するのが面倒なので、新しい順から出力させる。
show log reverse

# トンネルが現在いくつ立ち上がっているかを確認
show status tunnel up

# IPsecの状況を確認する
show ipsec sa

# L2TP接続の状況を確認する
show status l2tp

# anonymous接続の状況を確認する
show status pp anonymous
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 

なお、設定したものを削除したいときは、設定コマンドのはじめに「no」をつければその設定はsaveコマンドを入力した後に打ち消されます。

no ip lan2 secure filter in 1111 1112 1113 1114

 

といったように始めにnoをつけます。

ABOUT ME
moto
約5年間勤めた公務員から転職しました。 日頃の学びをここにアウトプットしていきます。 御朱印集めと筋トレが好きです。