Windows10でリモートアクセスを使用しているが、接続ボタンをクリックしても接続できなくなることがあります。

実際に接続をしてみると、以下の画像のように「セキュリティ層でリモートコンピュータと互換性のあるパラメーターをネゴシエートできなったため、L2TP接続に失敗しました。」とエラー表示が出てきます。

エラー表示「セキュリティ層でリモートコンピュータと互換性のあるパラメーターをネゴシエートできなったため、L2TP接続に失敗しました。」
エラー表示「セキュリティ層でリモートコンピュータと互換性のあるパラメーターをネゴシエートできなったため、L2TP接続に失敗しました。」

”ルータの設定”、”認証キー”、”ユーザ名”、”パスワード”などは一切間違えていないはず。。。なのですが、実際、自分も結構ハマってしまいました。

色々と試行錯誤した結果、以下の手順で修正したところ解決しましたので、同じ様な症状が発生している方は参考にして下さい。

目次

前提条件

  • ルータ:RTX1210(*RTXシリーズであれば条件は同じかと思います)
  • クライアント端末:Windows10Pro
  • 接続:別のネットワークから社内ネットワークに接続

VPN設定についての確認は、YAMAHA公式サイト「L2TP/IPsecを使用したリモートアクセス(YAMAHA公式」を確認して下さい。

修正箇所1:NATトラバーサル機能を有効にする

最初の設定段階で既に設定済みのハズなのですが、なぜか見当たらなくなりました。WindowsUpdateではないかと推測します。

とりあえず再設定を実施していきましょう。

接続に必要な値をレジストリに追加

レジストリエディタの「HKey_Local_Machine\SYSTEM\Current Control Set\Services\Policy Agent」に以下の値を追加します。

  • 名前:AssumeUDPEncapsulationContextOnSendRule
  • 種類:REG_DWORD
  • 値:2

これによりNATトラバーサル機能が有効になり接続できるようになります。

ファイル名を指定して実行(Windows+R)を開き、「regedit」と入力し「OK」クリックします。

ファイル名を指定して実行より「regedit」と入力してレジストリエディタを開く
ファイル名を指定して実行より「regedit」と入力してレジストリエディタを開く

レジストリエディタを開き、「HKey_Local_Machine\SYSTEM\Current Control Set\Services\PolicyAgent」とファイルを展開>PolicyAgentを選択し右クリック>新規>DWORD(32ビット値)を選択

レジストリエディタの中身1
レジストリエディタの中身1

「新しい値#1」と表示されるので、右クリック>「名前を変更」>「AssumeUDPEncapsulationContextOnSendRule」と入力します。

レジストリエディタの中身2
レジストリエディタの中身2

名前を変更した、「AssumeUDPEncapsulationContextOnSendRule」を右クリク>「修正」をクリック。「値のデータ」を「0→2」に変更します。

レジストリエディタの中身3
レジストリエディタの中身3

OKをクリックしてパソコンを再起動します。

PowerShellコマンドで実行する場合

PowerShellを管理者権限で開いたら、以下のコマンドを実行しましょう。

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

以上になります。PSだと一瞬で完了します。

なお、レジストリエディタの変更は自己責任でお願いします。万が一トラブルなどが発生しても責任を負いかねますので予めご了承下さい。

VPN接続時に動かすWindowsサービスの動作状況を確認する

WindowsでVPN接続する際には以下のWindowsサービスが動作していることが前提になります。

  • IKE and AuthIP IPsec Keying Modules
  • IPsec Policy Agent

*厳密には、IPsec Policy Agentは無効でも接続はできるようです。

サービス管理ツールを開いて確認

ファイル名を指定して実行(Windows+R)を開き、「services.msc」と入力し「OK」クリックします。

ファイル名を指定して実行から「サービス画面」を開く
ファイル名を指定して実行から「サービス管理ツール」を開く

サービス管理ツールが開いたら、「IKE and AuthIP IPsec Keying Modules」を探します。

サービス管理ツール
サービス管理ツール
IKE and AuthIP IPsec Keying Modules のプロパティ画面
IKE and AuthIP IPsec Keying Modules のプロパティ画面

「サービスの状態:実行中」になってることを確認します。もし「停止」になっている場合は、「開始ボタン」を押し、「スタートアップの種類」を「自動」に設定しましょう。

同様に、サービス管理ツールから、「IPsec Policy Agent」を探します。

サービス管理ツール
サービス管理ツール

「サービスの状態:実行中」になっていなければ「開始」をクリックして、「スタートアップの種類」を「自動」に切り替えます。

IPsec Policy Agent のプロパティ画面

なお今回は、スタートアップの種類が「手動」になっていたので、「自動」に変更しました。

IPsec Policy Agent のプロパティ画面2
IPsec Policy Agent のプロパティ画面2

これで無事に接続できました。

VPN接続が完了
VPN接続が完了

最近では、テレワークの重要性が注目されていますが、リモートアクセスで社内のファイルサーバなどにアクセスできるようになりたいという方も多いのではないでしょうか。

ぜひ、参考にしていただきながらチャレンジしてみて下さいね。

まとめ

リモートアクセス接続が不安定になったり、繋がらなくなったりすることがあります。

今回のケースで考えられる原因としては、接続に必要な値がレジストリに追加されていなかった点とIPsec Policy Agentのスタートアップの種類が「手動」になっていたのではないかと考えています。

もう暫く、様子をみながら検証してみたいと思います。

※2019年11月19日更新

以降、現時点で特別な不具合などなく順調に動作しています。

※2020年2月13日更新

PowerShellの設定に関して追加しました。


    VPN構築のご相談はこちら

    当ブログをお読みいただき誠にありがとうございます。
    当社では企業ネットワーク環境の構築、VPN設定などをおこなっております。
    お仕事のご相談や貴社の課題解決に向けたご相談がございましたら、下記問い合わせフォームよりご連絡下さい。

    お名前*

    会社名*

    郵便番号

    住所

    メールアドレス*

    電話番号

    お問い合わせ項目

    お問い合わせ内容*