Windows 10の標準VPNクライアントでNATトラバーサルが必要な場合の簡易手順


前提条件

  • 過去にNATトラバーサル設定を行っていない事
  • 設定はレジストリの変更を伴うため、実行は自己責任で行うこと

なお、Windows 10標準VPNクライアントでL2TP/IPSecを使用している場合で、二人目がVPNに接続したら一人目のVPN接続が切断される場合にも効果がある場合があります。

自働化

状態確認用ファイルの作成

次の内容をVPN_NAT-T_確認.batとして任意の場所に作成してください。
デスクトップでも大丈夫です。

reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent" /v "AssumeUDPEncapsulationContextOnSendRule"

pause

設定追加用ファイルの作成

次の内容をVPN_NAT-T_設定追加.batとして任意の場所に作成してください。
デスクトップでも大丈夫です。

reg query "HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent" /v "AssumeUDPEncapsulationContextOnSendRule"

reg add "HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent" /v "AssumeUDPEncapsulationContextOnSendRule" /t REG_DWORD /d 2

reg query "HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent" /v "AssumeUDPEncapsulationContextOnSendRule"

pause

実施

現状確認

まず最初にVPN_NAT-T_確認.batを実行します。
このファイルに副作用はありません。
これは保存したVPN_NAT-T_確認.batをダブルクリックやエンターするだけでOKです。

実行すると次の表示となります。
エラー: 指定されたレジストリ キーまたは値が見つかりませんでしたと表示されていればOKです。

それ以外の表示となっている場合、すでに一度NATトラバーサルの設定が行われている可能性があります。
自身の所属する組織のシステム管理者に問い合わせてください。

設定追加

次にVPN_NAT-T_設定追加.batを実行します。
このファイルには副作用があります
このファイルを実行した場合、レジストリに変更が加えられます。
以降はご自身の責任において実施してください。

保存したVPN_NAT-T_設定追加.batを右クリックし、管理者として実行をクリックしてください。

管理者として実行すると次の表示となります。
次の表示とならなかった場合、管理者ではなく通常の実行を行っています。ご注意ください。
はいをクリックしてください。

はいをクリックすると次の表示となります。
AssumeUDPEncapsulationContextOnSendRule REG_DWORD 0x2と表示されていれば正しく設定できています。

レファレンス

設定値の詳細については
Windows Vista および Windows Server 2008 で NAT-T デバイスの背後に L2TP/IPsec サーバーを構成する方法内、値データ近辺を参照してください。