вот если кому надо батник по теме автоматизации добавления маршрутов при подключении через PPTP
Код:
@echo off
title PPP VPN caller and routing script //имя задачи
set VPN=Имя_Соединения
set VPN_USER=Имя_Пользователя
set VPN_PASS=Пароль
echo Calling %VPN%... //вызываем соединение
rasdial %VPN% %VPN_USER% %VPN_PASS% //производим подключение
echo Removing old routing... //удаляем старые маршруты на всякий случай
route delete 192.168.1.0 //сетка в которую прописывали маршрут
echo Applying routing... //начинаем парсить адрес который получили от сервера PPTP
ipconfig > tempIP.txt //заносим полученные сведения об интерфейсах во временный файл
findstr "172.16.1." tempIP.txt > IP.txt //ищем во временном файле IP относящийся к сети пула из которого получили его от Сервера и пересылаем в другой временный файл
for /F "tokens=2 delims=:" %%f in (IP.txt) do echo VPN client address %%f //показываем что адрес найден для наглядности
for /F "tokens=2 delims=:" %%f in (IP.txt) do route add 192.168.1.0 mask 255.255.255.0 %%f //создаем маршрут в сеть
if exist tempIP.txt del temp1.txt //удаляем темп файлы
if exist IP.txt del temp2.txt
echo Done //отчитываемся о завершении скрипта
pause //ждем ответа от пользователя (если не нужно то можно убрать)
у этого метода есть 2 существенных недостатка.
1 - для запуска нужно иметь повышенные права
2 - при уже подключенном соединении нельзя повторно запускать скрипт (убивает жизнь в интерфейсе намертво, помогает только перезагрузка)
по первой проблеме найдено решение запускать скрипт посредством планировщика задач с параметром повышенных прав.
создаем задание без расписания на запуск скрипта и делаем на него ярлык следующего содержания
C:\Windows\System32\schtasks.exe /run /tn "Название_Задания"
Вот такой рецепт я для себя нашел. не очень изящно, но работает.