L2TP VPNのポートフォワーディング (L2TP behind Firewall)

投稿者: | 2020年7月25日

ファイアウォールの内側にあるL2TPサーバーにポートフォワーディングさせてVPN接続させる

L2TP VPNで使用するポート

UDP 1701 (L2TPトラフィック)
UDP 500 (IKE)
UDP 4500 (NAT-T)

これらをRASサーバーにフォワーディングさせれば良いはずなのだがこれだけではつながらない。

理由はWindows XP時代からWindows 10までずっとファイアウォールの内側にあるL2TPサーバーへの接続をデフォルトではdisableにしているかららしい。

参考:How to configure an L2TP/IPsec server behind a NAT-T device in Windows Vista and in Windows Server 2008

リンクが消えるといけないのでやり方を下記に書いておく。

regeditで HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent にDWORD (32bit)で
AssumeUDPEncapsulationContextOnSendRule を作成、その後PCを再起動。

値は、
0: VPNセッションを確立しない(これがデフォルト)
1: サーバー同士が共にNATデバイスの背後にいる場合にセッションを確立させる
2: ともにNATデバイスの背後にいるWindows 2008ベースのサーバーとWindows Vistaベースのパソコンの間でセッションを確立させる(Windows Server 2016とWindows 10でも同じらしい)

で、サーバーではなくて、クライアントPCのレジストリを上記の様に設定したところ無事接続できた。
ただ、この操作を手動で多数のPCに展開するのは大変。
ということで、グループポリシーでレジストリを展開する方法を見つけたのでメモしておく。

参考:Step by Step – L2TP/IPsec VPN set up on Windows 10 and Server 2016

L2TPポートフォワーディングのデメリット

L2TPをF/WでフォワードするとF/WでIPSecやL2TPのVPNを終端できなくなる。
もしFW to FW VPNで拠点間をつなぎたい場合にはL2TPポートフォワーディングとの共存はできないので要注意。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA



The reCAPTCHA verification period has expired. Please reload the page.