AutoRedial за VPN връзки Windows 8/2008/10/2012

Изненадващо, макар и малко, открих, че в Windows, започвайки с версия 8 и на Windows Server, като започне от 2008 г., Microsoft леко „подаде“ диалоговия прозорец за настройки на VPN връзката. По-точно намалих настройките в раздела Опции. Вместо това, което беше познато в Windows 7 и изглеждаше така:

Сега почти всичко беше премахнато и остана само:

И възникна легитимен въпрос - как сега да конфигурирате автоматично повторно свързване и броя на опитите да опитате отново, ако връзката е прекъсната?

Има няколко метода. Да вървим в ред. С нарастващата сложност, така да се каже.

Метод 1 - използвайте Notepad:

Задайте необходимите параметри ръчно. За да направите това, отидете в папката

C: \ Потребители \[USER]\ AppData \ Роуминг \ Microsoft \ Мрежа \ Връзки \ Pbk \

Намерете там (най-вероятно единствения) файл с име rasphone.pbk. Това е обикновен текстов файл, съдържащ настройки за VPN връзка.

Файлът може да бъде отворен с notepad.exe (Notepad)

По принцип трябва да намерите секцията, съдържаща вашата VPN - например такъв [PPTP-VPN]

И намерете редовете в него (TADA!) / Ако не сте променили нищо, ще изглежда така:

RedialAttempts = 3
RedialSeconds = 60
IdleDisconnectSeconds = 0
RedialOnLinkFailure = 1

Това е, отново, „Microsoft помисли за вас и реши всичко“.

Но сега знаете къде да търсите и промените необходимите параметри.

  • RedialAttempts= 3 - броят на опитите за повторно свързване (максимум 99)
  • RedialSeconds= 60 - броят секунди между опитите за повторно свързване
  • IdleDisconnectSeconds= 0 - колко да изчакам, за да разбера, че линията е прекъсната (0 - изобщо не чакайте)
  • RedialOnLinkFailure= 1 - Опитайте отново, ако връзката е прекъсната? 1 - да, 0 - не

За да приложите параметрите, трябва, както и преди, да свържете отново VPN.

И тогава вярвайте, че Microsoft Windows ще направи всичко за вас 🙂

забележка: Забелязва се, че Windows Server 2012 може по своя инициатива да използва папката C: \ Потребители \ [USER] \ AppData \ Roaming \ Microsoft \ Network \ Connections \ Pbk \ _hiddenPbk и да постави файла rasphone.pbk в тази папка.

Метод 2 - конфигуриране на най-простата задача:

Създайте задача в Task Scheduler, която ще стартира bat-файл със свързващ низ към необходимия VPN и конфигурира тази задача да работи, да речем, на всеки 5 минути.

Нека ви напомня, че командният ред за свързване на VPN връзка изглежда така

C: \ windows \ system32 \ rasdial.EXE име на влизане [потребителско име [парола | *]] [/ ДОМЕЙН: домейн]

Все още има параметри, но ако се интересувате, вижте сами..

В задачата не забравяйте да посочите, че „винаги бягайте“

Посочете изпълним файл, например такъв

Или кажете да бягате rasdial.exe (VPN потребителска парола е името на вашето потребителско име за VPN връзка и your_password)

забележка. Как да използвате помощната програма rasdial, която вече показахме в статията Autostart VPN връзки

Правете всеки 5 минути всеки ден.

Метод 3. Конфигурирайте задачата „с обрати“:)

  1. Създайте задача в Scheduler
  2. Определяме два тригера в задачата. Една, използваща XML заявка (подобно на статията Стартиране на задача за планиране след приключване на конкретна задача)
  * [Система [Доставчик [@ име = 'RasClient'] и (EventID = 20226)]] и * [EventData [Данни [4] = '829' или '629']]   
забележка. кодове: 829 - Дистанционно изключване, 629 -Прекъсване на клиент

Вторият се основава на проследяване на събитията в дневника на събитията:

  • Име на журнала: Microsoft-Windows-NetworkProfile / Operational
  • Източник: NetworkProfile
  • Идентификационен номер на събитието: 10000
  • Като стартирана програма изберете rasdial.exe с параметри vpn-име парола за потребителско име
  • Освен това в раздела Условия можете да отмените следните параметри

забележка: За да сте сигурни, че тази задача работи или не, създайте друг тригер с Event ID = 10001. Това събитие се появява, когато VPN е деактивиран ръчно (disconnet). След това опитайте да деактивирате ръчно VPN. Връзката ще бъде възстановена незабавно.

Е, това е всичко.

забележка Всичко описано работи в Windows 7

Освен това, под спойлера, давам, без превод, дълго, подробно и досадно описание на Метод 1 и 3 на английски, взето от форума на Technet.

Имаше този проблем за няколко седмици, но най-накрая имах шанс да прекарам малко време за него снощи. Дойдох в тази нишка .... Предполагам, че с Microsoft, осъществявайки VPN връзка RT-Like, те пропуснаха част от диалога или го поставиха по този начин за RT Tablets с мисълта, че няма да искате VPN да се свързва отново и да използва данни / батерия. Разбира се, те пропуснаха да го запазят за настолни компютри ...

Във всеки случай се надявах, че информацията за диалозите е пропусната от действителния код не е както е понякога. Изглеждах обещаващо, когато проверих VPN конфигурацията и открих настройките, генерирани в Windows 8 връзка. За съжаление, докато настройките са активирани за повторно набиране, функцията за повторно набиране не работи. Опитах да установя VPN връзка с rasdial, макар и dos, но все още няма късмет. Просто ми хрумна, докато въвеждам този имейл, че може да се опитам да преименувам rasdial.pbk и да го заредя с коментара на Rasdial, за да установя VPN връзка, може би ще използва настройките. Ще го опитам по-късно.

В C: \ Потребители \ Joe \ AppData \ Роуминг \ Microsoft \ Мрежа \ Връзки \ Pbk \ rasphone.pbk всъщност са активирани настройките за повторно набиране в него ...

RedialAttempts = 3
RedialSeconds = 60
IdleDisconnectSeconds = 0
RedialOnLinkFailure = 1 (Това е зададено на едно в Windows 7, когато активирате квадратчето за повторно набиране)

В случай, че някой се интересува, излезе с доста добро решение снощи, докато MS не пусне актуализация, за да върне настройките. Харесвам това решение по-добре от това да стартирате решение на трета страна, за да се опитате да поддържате VPN. Можете да настроите задание за график на задачите, което да задейства при прекъсване. Снощи го опитах и ​​VPN веднага се свърза отново. Проверявам кодове за грешки клиент / дистанционно изключване, с изключение на кода „изключване на потребителя“, за да избегна повторното му свързване, когато всъщност искате да прекъснете връзката. Това са само два кода за грешки, които отбелязах в дневника на събитията, MS изброява много повече кодове за грешки, но не съм ги изпитвал при прекъсвания, въпреки че те могат да бъдат добавени. Ако някой използва това и смята, че трябва да се добавят още кодове, моля, актуализирайте xml заявката или ме уведомете и аз ще я актуализирам. Простете XML заявката, а не нещо, което обикновено го правя, ако може да се форматира по-добре, уведомете ме ... за учене 😉

Ето списък с някои кодове за грешки (това не е пълно за Win8, но не прекарах много време в търсене)

Как да настроите планирана задача за задействане на VPN Disconnect

  1. Щракнете върху Старт на Windows8 и въведете Задача за график (отворете я в Настройки)
  2. Щракнете върху Създаване на задача
  3. Приложете следните настройки в указаните раздели (курсивът описва всяка настройка)

Общ раздел

Име: VPN повторно набиране
За описателна употреба можете да използвате всяко име, което искате, като My Company VPN Redial .... Каквото и да е ...

Изберете: Изпълнете дали потребителят е влязъл или не
При условие, че имате парола, свързана с вашия акаунт за вход, тази опция ще предотврати отварянето на прозореца dos при всяко изпълнение на задачата. Ако нямате парола, оставете я и вижте бележките под тези стъпки.
Раздел за задействане

Щракнете върху бутона New
За да създадем нов тригер, ще използваме за активиране на задачата, когато VPN връзката се прекъсне

Започнете задачата: На събитие
Работата ще се задейства от запис в дневника на събитията на приложението

Изберете: Персонализиран
Custom ни дава гъвкавост при създаването на по-подробна заявка

Щракнете върху бутона New Filter Filter ...
Ето къде изграждаме заявката за спусъка

Кликнете върху раздела XML
Този раздел ни позволява да напишем собствено запитване (още по-гъвкаво)

Поставете отметка Редактиране на заявка ръчно
За да започнете ръчна редакция

Копирайте следната заявка
Тази заявка ще се задейства при Application Event за RasClient с EventID от 20226 и кодове за грешки 829 (Remote Disconnect), 629 (Client Disconnect). Копиране от и включително към



* [Система [Доставчик [@ име = 'RasClient'] и (EventID = 20226)]] и * [EventData [Данни [4] = '829' или '629']]

Щракнете върху OK

Уверете се, че е активирана
Проверете дали не е поставена отметка, за да сте сигурни, че работата ще бъде активирана

Кликнете ок

Раздел Действия

Кликнете върху ново
За да създадете действие, което да се извърши при задействане на задачата

Действие: Стартирайте програма
Избирането на тази опция ще ни позволи да започнем rasdial, за да възстановим VPN връзката

Програма / сценарий: rasdial
Трябва вече да е в път, така че просто въведете команда rasdial

Добавете аргументи (незадължително): Парола за потребителско име за „Име на VPN“
VPN име е името, което сте определили за вашата връзка за набиране. Например, когато щракнете върху иконата на мрежата в системната област, името, което е посочено за вашия VPN, уверете се, че сте го въвели точно както е показано. След свързването ще бъде вашето потребителско име и парола. Пример, парола за потребителско име „Моята VPN връзка“

Кликнете ок

Раздел Условия (не се изисква, освен ако не използвате лаптоп)

Настройки TAB

Активиране: Ако задачата се провали, рестартирайте всеки: 1 минута
В случай, че има временен проблем за възстановяване на VPN връзката. Можете да посочите каквато стойност искате вместо 1 минута

Опит за рестартиране до: 7 пъти
Отново в случай, че има временен проблем за възстановяване на VPN връзката. Можете да посочите каквато стойност искате вместо 7 пъти

Кликнете ок
бележки

  1. Наистина не съм тествал толкова много, но аз го конфигурирах снощи, събудих се тази сутрин, за да намеря дневника на събитията, показващ 4 прекъсвания, и работата повторно набрана всички 4 пъти, VPN връзката все още беше активна.
  2. В раздела Общи активирахме „Изпълнение дали потребителят е влязъл или не. Това не е проблем, тъй като няма да има VPN връзка, когато не сте влезли в системата. Това, което прави тази опция, тъй като изпълняваме команда dos (rasdial), предотвратява отварянето на dos прозореца при всяко изпълнение на задачата, така че няма да се разсейвате, ако сте в средата на нещо. Тази опция работи само ако имате парола (която трябва да), свързана с вашия акаунт. Ако не го направите и просто позволите на вашия компютър да се зарежда на работния плот, опцията няма да работи. Това, което направих за хора в тези ситуации, е създадена малка VBScript обвивка, за да стартирате командата dos, за да избегнете подканата dos. Всъщност не е проблем, освен ако не сте анален към това като мен, просто бихте могли да се справите с отварящия се прозорец на Dos.
  3. Отново заявката проверява журнала на събитията за нов запис за RasClient с идентификационен номер на събитието от 20226, съдържащ кодове за грешки 820 или 620. можете да добавите допълнителни кодове за грешка, като повторите шаблона. Пример за задействане на 222 и 333, вие ще промените съответната част от реда като такава * [EventData [Данни [4] = '829' или '629' или '222' или '333']]

    .