Автоматическое добавление маршрутов для VPN-соединения в Windows

Все об администрировании рабочих станций Windows 95/98/NT/2000/XP/7/8. То, чего не найдешь в бескрайних просторах Интернета. Решения тех проблем, которые не решаются типовыми ответами, которые можно получить в техподдержке Майкрософта - а именно: переустановить продукт или купить какой-ть другой лицензионный диск.


Модератор: UncleFather

Аватара пользователя
UncleFather
Site Admin
Сообщения: 1518
Зарегистрирован: 17 авг 2004 16:20, Вт
Контактная информация:

Автоматическое добавление маршрутов для VPN-соединения в Windows

Сообщение UncleFather »

Задача:

Имеется подключение VPN, в котором отключено использование шлюза в удаленной сети.

01.png

Необходимо при установке этого подключения, добавлять маршрут на некую внутреннюю подсеть.


Решение:

В современных версиях Windows существует возможность автоматического добавления статических маршрутов при активации определённого VPN подключения. Когда VPN подключение разрывается, данный маршрут автоматически удаляется из таблицы маршрутизации Windows. Для добавления IPv4 или IPv6 маршрута для VPN подключения используется PowerShell командлет Add-VpnConnectionRoute.

Например, для добавления маршрута 192.168.111.0/24 через VPN соединение workVPN:

Код: Выделить всё

Add-VpnConnectionRoute -ConnectionName "workVPN" -DestinationPrefix 192.168.111.0/24 –PassThru

При активном соединении, требуется его переподключение для добавления новых маршрутов в в таблицу маршрутизации.

Новые маршруты привязаны к VPN подключению и добавляются при его запуске. При отключении от VPN сервера, маршруты автоматически удаляются.

Вывести список статических маршрутов для подключения:

Код: Выделить всё

(Get-VpnConnection -ConnectionName workVPN).Routes

Для удаления статических маршрут для VPN подключения:

Код: Выделить всё

Remove-VpnConnectionRoute -ConnectionName workVPN -DestinationPrefix 192.168.111.0/24 -PassThru

Более подробно читаем здесь.


Решение для устаревших ОС:

Для ОС ниже Windows 8 нет команды Add-VpnConnectionRoute, поэтому создаем батник, запускающийся от имени администратора, подключающий VPN и прописывающий маршрут:

Код: Выделить всё

@echo off
if not "%1"=="am_admin" (powershell start -verb runas '%0' am_admin & exit /b)
rasphone
route add 192.168.0.0 MASK 255.255.255.0 XXX.XXX.XXX.XXX

XXX.XXX.XXX.XXX - адрес шлюза, получаемый после установки VPN-соединения.


Alexander A. Manaeff©

Понравилась статья? Будем крайне признательны за репосты в соцсетях! Материально поддержать проект можно здесь

Мои странички:
ВКонтакте
Одноклассники
Youtube
Facebook
Instagram

Изображение
Изображение
Изображение
Изображение