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

:: Задержка между проверками, секунд (примерно)

set pause=10

:LOOP

set connected=0

for /f "delims=" %%i in ('rasdial') do (

if "%%i"=="%connection:"=%" set connected=1

)

if %connected%==0 (

echo %date% %time% "%connection%" connection not detected. Dialing...

rasdial "%connection:"=%"

) else (

echo %date% %time% "%connection%" connection is active.

)

ping -n %pause% 127.0.0.1>nul 2>&1

goto LOOP

Если я правильно понял то

а) set connection= - Это имя Вашего VPN соединения в Windows.

б)set pause=10 - Без комментариев.

в) ping -n %pause% 127.0.0.1>nul 2>&1 - тут IP следует заменить на какой-нибудь IP из интернета.

Источник

UPD2:
Так-же можно сделать автостарт VPN в качестве сервиса, без входа под пользователем

Для начала вспомним как в Windows поднять сконфигурированный VPN из командной строки при помощи стандартной команды rasdial:



rasdial connection-name username password




Итак, конфигурация автоматической закрузки VPN при старте системы:
1. Скачать и установить Windows Server 2003 Resource Kit Tools или скопировать необходимые файлы с другой машины.
2. Скопировать файлы Autoexnt.exe, Servmess.dll, и Instexnt.exe в каталог %SystemRoot%\System32\.
3. Создать файл %SystemRoot%\System32\autoexnt.bat с командой rasdial connection-name username password.
4. В командной строке ввести instexnt install, нажать ENTER.

После перезагрузки компьютера, будут выполнены команды из пакетного файла autoexnt.bat.

Источник

От себя добавлю: если Вы хотите, что-бы rasdial не рвал соединение после выхода из под пользователя сделайте:
1) Пуск => выполнить => regedit
2) Перейдите: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
3) Создайте ключ KeepRasConnections: REG_SZ: 1
4) Перезагрузитесь
blog comments powered by Disqus