構築したVPNサーバに、クライアント(Windows7)から接続するための手順。
[スタート > コントロールパネル > ネットワークと共有センター] を選択
※右上の表示方法はお好みで。

[新しい接続またはネットワークのセットアップ] を選択

[職場に接続します] を選択

[インターネット接続(VPN)を使用します] を選択]

①のアドレスは、接続先のサーバを記入
②は分かりやすい任意の名前を記入
[今は接続しない。自分が後で接続できるようにセットアップのみを行う] のチェックボックスを選択し、次へ。

VPNサーバ構築時に、設定したVPN接続用ユーザIDをPasswordを記入

※ここでは接続されずに、ネットワークアダプターのみ作成される。
[ネットワークと共有センター] 画面に戻り、[アダプター設定の変更] を選択

作成されたVPNアダプターを [右クリック > プロパティ]

プロパティ画面の [セキュリティタブ] にて、VPNの種類を L2TP/IPSec に選択。

同画面、[詳細設定] を選択

VPNサーバ構築時に設定した、[事前共有キー] を記入

戻り、VPNアダプターをダブルクリックし、接続画面を開く

ユーザーIDとパスワードを記入して接続する
!!注意!!ただし、L2TP-VPN サーバーかクライアントのどちらか、または両方が、アクセスに NAT(アドレス変換)が必要な場合は、Windowsだとレジストリの設定が必要になる。レジストリキーの場所は、Windows Vista や 7 の場合には "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent" になる。今回の環境はサーバ及びクライアント共にNAPTのため設定が必要。
この場所に、"AssumeUDPEncapsulationContextOnSendRule" という名前の "REG_DWORD" 値を作成して、次のように値を設定する。
0 (NAT-T無効。デフォルト)
1 (片一方がNATの背後)
2 (サーバ、クライアント共にNATの背後)
設定後は、マシンの再起動が必要になる。この設定は、
VPNサーバ及びWindows7クライアントの両方に設定が必要。※レジストリの設定変更には最新の注意が必要。設定を間違えると、PCが起動しなくなることもあるので、バックアップを取っておくなど、自己責任にて。[スタート > ファイル名を指定して実行 > regedit] レジストリエディターを起動。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent へ移動。
[右クリック > 新規 > DWORD値 をクリック]

新しく作成された、[新しい値 #1] を右クリックし、名前を
AssumeUDPEncapsulationContextOnSendRule へ変更する

名前を変更後、右クリック > 修正

値を 2 に変更する

変更後、再起動して設定完了。
上記レジストリの設定を、vbs にて自動で行えるよう、スクリプトを作成してみました。
' 管理者権限に昇格
' WScript.Arguemnts.Count = 0:GUI 1:CUI
do while WScript.Arguments.Count = 0 and WScript.Version >= 5.7
' Check WScript5.7~ and Vista~
Set wmi = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set os = wmi.ExecQuery("SELECT *FROM Win32_OperatingSystem")
For Each value in os
if left(value.Version, 3) < 6.0 then exit do 'Exit if not vista
Next
' Run this script as admin.
Set sha = CreateObject("Shell.Application")
sha.ShellExecute "wscript.exe", """" & WScript.ScriptFullName & """ uac", "", "runas"
WScript.Quit
loop
' todo:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\services\PolicyAgent\AssumeUDPEncapsulationContextOnSendRule", 2, "REG_DWORD"
自分の環境にて、正常に動作したことを確認済みです。VPNクライアントの設定が複数ある場合に。
スクリプト参考:ORCA愉快日記
brainremix