Здравствуйте.
Стоит задача в ОС Windows настроить использование OpenVPN только одним приложением.
Не хочу использовать ForceBindIP, считаю его костылём, требуется максимально стабильное решение, желательно средствами самой ОС.
Поэтому хочу реализовать следующий сценарий:
- В системе после подключения туннеля есть два маршрута по умолчанию, с меньшей метрикой - стандартный шлюз по умолчанию, с большей метрикой - шлюз OpenVPN.
- Брандмауэром Windows запрещаю целевому приложению исходящую связь через реальные физические интерфейсы (у него есть такая возможность).
- Целевое приложение, получая запрет на использование физических интерфейсов, посылает трафик в виртуальный, так как он также является шлюзом по умолчанию.
- Все остальные приложения и система используют стандартный шлюз.
Звучит красиво, но не получается (((
Что я делаю.
- После подключения VPN удаляю маршруты вида 0.0.0.0/1 и 128.0.0.0/1, а затем заменяю их одним маршрутом вида 0.0.0.0/0 (см. скриншоты). На этом этапе работает, трафик идёт через VPN.
- Далее пытаюсь у стандартного шлюза понизить метрику, полагая, что после этого трафик пойдёт через основной шлюз, а туннельный шлюз будет альтернативным. И вот здесь происходит затык.
Прилагаю несколько скриншотов с маршрутами:
первый скриншот до подключения и различных манипуляций
второй после подключения туннеля
третий после ручного изменения маршрутов (здесь пока работает)
четвёртый после попыток изменить метрику для маршрута (здесь уже не работает)
Помогите, пожалуйста, понять в чем моя ошибка и что делаю не правильно.
Заранее благодарен за ваши ответы.