Довелося мені зіткнутися із завданням: Як зробити автозапуск VPN при старті системи?
Відразу скажу, що додавання ярлика в автозавантаження Windows результату не принесло.
На щастя вихід знайшовся швидко.
1) Створюємо VPN з'єднання в Windows, через яке плануємо підключиться до інтернету.
2) Створюємо .bat файл-сценарій наступного змісту:
rasdial "ІМЯ_VPN_СОЕДІНЕНІЯ_В_WINDOWS" "ім'я користувача" "ПАРОЛЬ"
Припустимо Ми створили VPN з'єднання і назвали його VPN_MS
Ім'я користувача: User_name
Пароль для з'єднання: My_pass
Тоді підключаємося так:
rasdial VPN_MS User_name My_pass
3) Створюємо ярлик для Нашого сценарію і додаємо його в автозавантаження.
для відключення можна використовувати команду
rasdial / disconnect
UPD:
Ось знайшов скрипт, для моніторингу VPN з'єднання, якщо з'єднання втрачено, то виробляти перепідключення:
@echo off
set connection = My VPN Connection
Затримка між перевірками, секунд (приблизно)
for / f "delims =" %% i in ( 'rasdial') do (
if "%% i" == "% connection:" =% "set connected = 1
echo .ate%% time% "% connection%" connection not detected. Dialing.
echo .ate%% time% "% connection%" connection is active.
ping -n% pause% 127.0.0.1> nul 2> 1
goto LOOP
Якщо я правильно зрозумів то
а) set connection = - Це ім'я Вашого VPN з'єднання в Windows.
в) ping -n% pause% 127.0.0.1> nul 2> 1 - тут IP слід замінити на який-небудь IP з інтернету.
UPD2:
Так-же можна зробити автостарт VPN в якості сервісу, без входу під користувачем
Для початку згадаємо як в Windows підняти конфігурований VPN з командного рядка за допомогою стандартної команди rasdial:
rasdial connection-name username password
Після перезавантаження комп'ютера, будуть виконані команди з пакетного файлу autoexnt.bat.
Від себе додам: якщо Ви хочете, що-б rasdial не рвав з'єднання після виходу з під користувача зробіть:
1) Пуск => виконати => regedit
2) Перейдіть: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon
3) Створіть ключ KeepRasConnections: REG_SZ: 1
4) Перезавантажитеся
VPN в автозавантаження під MS Windows
Довелося мені зіткнутися із завданням: Як зробити автозапуск VPN при старті системи?
Відразу скажу, що додавання ярлика в автозавантаження Windows результату не принесло.
На щастя вихід знайшовся швидко.
1) Створюємо VPN з'єднання в Windows, через яке плануємо підключиться до інтернету.
2) Створюємо .bat файл-сценарій наступного змісту:
rasdial "ІМЯ_VPN_СОЕДІНЕНІЯ_В_WINDOWS" "ім'я користувача" "ПАРОЛЬ"
Припустимо Ми створили VPN з'єднання і назвали його VPN_MS
Ім'я користувача: User_name
Пароль для з'єднання: My_pass
Тоді підключаємося так:
rasdial VPN_MS User_name My_pass
3) Створюємо ярлик для Нашого сценарію і додаємо його в автозавантаження.
для відключення можна використовувати команду
rasdial / disconnect
UPD:
Ось знайшов скрипт, для моніторингу VPN з'єднання, якщо з'єднання втрачено, то виробляти перепідключення:
@echo off
set connection = My VPN Connection
Затримка між перевірками, секунд (приблизно)
for / f "delims =" %% i in ( 'rasdial') do (
if "%% i" == "% connection:" =% "set connected = 1
echo .ate%% time% "% connection%" connection not detected. Dialing.
echo .ate%% time% "% connection%" connection is active.
ping -n% pause% 127.0.0.1> nul 2> 1
goto LOOP
Якщо я правильно зрозумів то
а) set connection = - Це ім'я Вашого VPN з'єднання в Windows.
в) ping -n% pause% 127.0.0.1> nul 2> 1 - тут IP слід замінити на який-небудь IP з інтернету.
UPD2:
Так-же можна зробити автостарт VPN в якості сервісу, без входу під користувачем
Для початку згадаємо як в Windows підняти конфігурований VPN з командного рядка за допомогою стандартної команди rasdial:
rasdial connection-name username password
Після перезавантаження комп'ютера, будуть виконані команди з пакетного файлу autoexnt.bat.
Від себе додам: якщо Ви хочете, що-б rasdial не рвав з'єднання після виходу з під користувача зробіть:
1) Пуск => виконати => regedit
2) Перейдіть: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon
3) Створіть ключ KeepRasConnections: REG_SZ: 1
4) Перезавантажитеся