Встроенный VPN клиент Windows в случае разрыва подключения по-умолчанию не пытается переподключиться к VPN серверу. В этом случае пользователю приходится вручную подключаться к VPN. В Windows есть несколько инструментов, которые позволят настроить автоматическое переподключение к VPN после потери соединения.
В графическом интерфейсе VPN клиента Windows отсутствуют настройки переподключения. Однако вы можете настроить их через конфигурационный файл rasphone.pbk , который хранится в профиле пользователя ( %userprofile%AppDataRoamingMicrosoftNetworkConnectionsPbk
). В этом файле хранятся параметры всех профилей VPN подключений пользователя.
%ProgramData%MicrosoftNetworkConnectionsPbkrasphone.pbk
.Откройте файл rasphone.pbk с помощью текстового редактора, найдите секцию для нужного VPN профиля (например, [PPTP-VPN] ) и промотайте к параметрам:
- RedialAttempts =3 – количество попыток переподключиться (максимум 99)
- RedialSeconds =60 – количество секунд между попытками переподключения
- IdleDisconnectSeconds =0 — сколько выжидать, чтобы понять что линия оборвалась (0 – не ждать вовсе)
- RedialOnLinkFailure =1 — Переподключиться в случае обрыва связи 1 – да, 0 — нет
Однако, настройки из файла rasphone.pbk не всегда корректно отрабатывают для всех возможных случаев. Поэтому рекомендуется автоматизировать переподключение к VPN с помощью задания планировщика, которое будет переподключаться к VPN в случае разрыва соединения или подключения компьютера к сети (Wi-Fi или Ethernet). Нас интересуют следующие события:
EventID | Источник | Описание |
20226 | RasClient (журнал Application) | The user username dialed a connection named VPNConnectionName which has terminated. The reason code returned on termination is 829. |
10000 | NetworkProfile (журнал Microsoft-Windows-NetworkProfile/Operational) | Network Connected |
Откройте Task Sheduler ( taskschd.msc
) и создайте новое задание планировщика (Create Task). Укажите имя задания.
Перейдите на вкладку Trigger и создайте два триггера для событий (Begin the task: On event ):
- Log:
Application
, Source:RasClient
, EventID:20226
- Log:
Microsoft-Windows-NetworkProfile/Operational
, Source:NetworkProfile
, EventID:10000
Теперь нужно настроить действие, которое будет выполняться при появлении любого их этих событий. Перейдите на вкладку Actions -> нажмите New .
- Выберите действие:
Start a program
- Program/script:
%windir%System32rasdial.exe
- В аргументах укажите:
"ИмяВашегоVPNподключения"
В этом примере для подключения используется VPN профиль с сохраненным паролем. Если вы хотите указать имя и пароль для VPN подключения, задайте их так:
"ИмяВашегоVPNподключения" username password
Get-VpnConnection|select name,ServerAddress,TunnelType
Протестируете задание планировщика: отключите на время сетевой кабель от компьютера или отключитесь VPN. Проверьте, что после подключения сети, Windows автоматически переподключается к вашему VPN серверу.