Windows 10 добавить статический маршрут для vpn

В современных версиях Windows есть интересная возможность автоматического добавления статических маршрутов при активации определённого VPN подключения. Когда

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

Вы конечно, можете вручную в командной строке добавлять нужные маршруты для VPN подключения, но главная проблема в том, что такие маршруты очищаются после отключения от VPN. Поэтому при следующем подключении, вам придется опять руками прописывать маршруты.

Допустим, вы хотите, чтобы через ваше VPN подключение маршрутизировались только пакеты для двух подсетей (192.168.111.24/ и 10.1.0.0/16), а весь основной трафик должен идти через вашего провайдера.

Откройте консоль PowerShell и выведите список всех настроенных VPN подключений в Windows:

Get-VpnConnection

Get-VpnConnection вывести список vpn подключений

В первую очередь нужно отключить опцию “Use default gateway in remote network” (Использовать основной шлюз в удаленной сети). Это можно сделать в свойствах VPN подключения в панели управления или командой:

Set-VpnConnection –Name workVPN -SplitTunneling $True

Подробнее про SplitTunneling здесь.

отключить опцию "Использовать основной шлюз в удаленной сети" для VPN подключений

Добавим два статических маршрута для нашего VPN-соединения:

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

В параметре DestinationPrefix нужно указать подсеть, или конкретный IP адрес хоста, трафик к которому нужно маршрутизировать через VPN. Для добавления одного IP адреса используйте формат 10.1.1.26/32.

Add-VpnConnectionRoute добавить статический маршрут для vpn подключения

DestinationPrefix : 192.168.111.0/24
InterfaceIndex :
InterfaceAlias : workVPN
AddressFamily : IPv4
NextHop : 0.0.0.0
Publish : 0
RouteMetric : 1

Если у вас активно VPN подключение, вам нужно переподключиться, чтобы новые маршруты добавились в таблицу маршрутизации.

таблица маршрутизации при активном vpn в windows 10

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

Отключитесь от VPN и проверьте таблицу маршрутизации. Маршрут к вашей удаленной сети удалился автоматически, а Get-NetRoute вернет, что маршрут не найден:

Get-NetRoute : No MSFT_NetRoute objects found with property 'DestinationPrefix' equal to '192.168.111.0/24'. Verify the value of the property and retry. CmdletizationQuery_NotFound_DestinationPrefix,Get-NetRoute

маршут автоматически удаляется после отключения от vpn сервера в windows 10

Вывести список статических маршрутов для подключения:
(Get-VpnConnection -ConnectionName workVPN).Routes

Чтобы полностью удалить статических маршрут для VPN подключения, используйте команду:
Remove-VpnConnectionRoute -ConnectionName workVPN -DestinationPrefix 192.168.111.0/24 -PassThru

Если вам нужно изменить порядок разрешения DNS имен при активном VPN, познакомьтесь со статьей.

В предыдущих версиях Windows (Windows 7/ Server 2008R2) для динамического добавления маршрутов после установления VPN подключений приходилось использовать CMAK и различные скрипты с командами
add route
.

Например, можно создать командный файл vpn_route.netsh для добавления маршрутов.

interface ipv4
add route prefix=192.168.111.24 interface="workVPN" store=active
add route prefix=10.1.0.0/16 interface="workVPN" store=active
exit

Данный файл нужно запускать через задание планировщика, которое срабатывает на событие установки VPN подключения в Event Viewer (RasMan 20225)

schtasks /create /F /TN "Add VPN routes" /TR "netsh -f C:PSvpn_route.netsh" /SC ONEVENT /EC Application /RL HIGHEST /MO "*[System[(Level=4 or Level=0) and (EventID=20225)]] and *[EventData[Data='My VPN']]"

Add-VPNConnectionRoute-000.pngВ последнее время значительно вырос интерес к технологиям удаленного доступа для обеспечения работы сотрудников из любого места. Ключевую роль здесь играет VPN, как универсальное и безопасное средство для получения доступа во внутреннюю сеть предприятия. Наиболее привлекательно использовать для этого те протоколы, которые штатно поддерживаются в Windows, что позволяет организовать соединение на любом ПК без установки на него стороннего ПО. Но у данного способа есть одна проблема — добавление маршрутной информации, сегодня мы рассмотрим один из штатных способов, позволяющих легко управлять маршрутами для VPN-соединений.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Стандартные сетевые возможности Windows многим хороши, кроме одного — управление маршрутами для VPN-соединений. Именно это заставляло многих системных администраторов выбирать альтернативные технологии, например, OpenVPN, но это не совсем удобно если речь идет о личных устройствах сотрудников, так как требует установки дополнительного ПО, что, к тому же, не всегда возможно. Кроме того, мы неоднократно сталкивались с ситуациями, когда пользователи удаляли данное ПО, устанавливали конфликтующие приложения, теряли ярлыки для подключения, блокировали его антивирусным ПО и т.д. и т.п.

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

Но вернемся к нашему вопросу. Для добавления маршрутов в удаленную сеть традиционно использовали несколько методов:

  • Статическая маршрутизация — на первый взгляд все просто, что прописали руками — то и работает. Но добавление маршрутов требует привилегий администратора, не всегда возможно заранее прописать маршрут из-за отсутствия интерфейса, при переподключении маршруты могут стать недействительными.
  • Маршрутизация на основе классов — требует тщательного планирования адресного пространства, нет возможности прокинуть дополнительные маршруты, сложно работать с сетями 192.168.х.х.
  • CMAK и различные скрипты — требуют административных привилегий, сложны в настройке, непрозрачны.

В тоже время начиная с Windows 8 существует штатное решение в виде командлета PowerShell, которое позволяет привязать маршруты к VPN-подключению и добавлять их при его запуске, при отключении соединения маршруты будут автоматически удалены.

Запустим консоль PowerShell и прежде всего узнаем имена имеющихся в системе VPN-подключений:

Get-VpnConnection

Результатом работы команды будет информация обо всех коммутируемых подключениях, нас интересует поле Name:

Add-VPNConnectionRoute-001.pngТеперь добавим маршрут к удаленной сети для подключения с именем L2TP MT:

Add-VpnConnectionRoute -ConnectionName "L2TP MT" -DestinationPrefix 192.168.111.0/24 -PassThru

где в параметр ConnectionName содержит имя подключения, взятое в кавычки, а DestinationPrefix — необходимую сеть назначения или узел.

Add-VPNConnectionRoute-002.pngТеперь проверим как это все работает. Проверим таблицу маршрутизации при отключенном VPN-подключении и убедимся, что маршруты в удаленную сеть отсутствуют:

Add-VPNConnectionRoute-003.pngТеперь подключимся к VPN-серверу и снова проверим таблицу маршрутизации — в ней появится указанный нами маршрут к удаленной сети:

Add-VPNConnectionRoute-004.pngЕсли нужно добавить несколько маршрутов — выполняем команду несколько раз. При этом можно добавлять маршруты не только к удаленной сети, но и к определенному узлу, что в ряде случаев более предпочтительно по соображениям безопасности, например:

Add-VpnConnectionRoute -ConnectionName "L2TP MT" -DestinationPrefix 192.168.111.101/32 -PassThru

Данная команда добавит маршрут к узлу 192.168.111.101, к другим узлам удаленной сети доступа у VPN-пользователя не будет.

Чтобы удалить маршрут следует воспользоваться командой Remove-VPNConnectionRoute, синтаксис которой полностью повторяет команду добавления маршрута:

Remove-VpnConnectionRoute -ConnectionName "L2TP MT" -DestinationPrefix 192.168.111.0/24 -PassThru

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

Важно! Данные возможности не поддерживаются в Windows 7.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Когда мы подключаемся к некой сети по VPN и при этом
нам выдается IP из отдельного пула, который в целевую сеть не входит, то мы
должны вручную прописать маршрут до нужной нам сети. Что-то вроде:

route add -p 192.168.2.0 mask 255.255.255.0 172.16.0.1

И так делать необходимо каждый раз при подключении к этому VPN, что хоть и не сложно, но
необходимость каких-то дополнительных телодвижений жутко бесит. А если у нас
нет прав администратора – выполнить эту команду вообще невозможно. Прописать
один раз статический маршрут тоже не выйдет, т.к. при отключении происходит
уничтожение соответствующего интерфейса, и маршрут хоть и почему-то остается в
списке route print,
но при последующем подключении не работает, пока не прописать его заново.

Справедливости ради, выполнить нижеследующую инструкцию без
прав админа тоже не выйдет, но это хотя бы нужно сделать лишь один раз.

Таким образом, мы хотим, чтобы при подключении к VPN нужный
нам маршрут прописывался автоматически
. Microsoft не перестает удивлять, и такую
казалось бы очевидную-элементарную функцию в свою винду не удосужилась впилить
даже к версии 20H2.

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

Допустим, что мы подключаемся к VPN-серверу, который находится в сети 192.168.2.0/24, а VPN-клиентам выдает адреса из пула 172.16.0.0/16, сам же имея при этом адрес 172.16.0.1. Таким образом, мы видим шлюз 172.16.0.1, но не знаем, что путь до 192.168.2.0/24 лежит через него.

Нужный нам журнал находится тут:

Просмотр событий – Журналы приложений и служб – Microsoft – Windows – NetworkProfile – Выполняется.

В этот журнал попадают подключения и отключения к различным сетям,
что нам и требуется.

Успешное подключение к VPN посредством стандартного rasdial генерирует событие с кодом 10000:

А отключение генерирует событие с кодом 10001:

Это мы и будем ловить. Далее нужно создать два задания в
планировщике – на подключение и отключение, которые будут отличаться всего в двух
местах.

Создаем задачу:

Создаем действие «Запуск программы» и ставим запуск C:WindowsSystem32ROUTE.EXE с параметрами add -p 192.168.2.0 mask 255.255.255.0 172.16.0.1 – получается та же самая команда на создание маршрута.

Обязательно ставим галку «Выполнить с наивысшими правами»,
т.е. от админа.

Триггером же нужно поставить событие из журнала. Создаем:

Выбираем «При событии», «Настраиваемое», «Создать фильтр событий», далее «XML», галка «Изменить запрос вручную» и копипастим туда следующее:

<QueryList>
  <Query Id="0" Path="System">
    <Select Path="Microsoft-Windows-NetworkProfile/Operational">
      *[System[(EventID=10000)]] and *[EventData[(Data[@Name="Name"]="MY-VPN")]]
    </Select>
  </Query>
</QueryList>

Где вместо MY-VPN ставим имя нашего подключения.

В «Условиях» снимаем галки про питание и батарею, а также ставим галку «Запускать только при подключении к следующей сети» и выбираем «Любое подключение». Если выбрать в этом списке что-то другое, то задача выполняться вообще не будет, а при попытке запустить ее вручную выдаст непонятную сраку:

Этот баг
известен микрософту, но делать с ним что-либо они не торопятся, по этой же
причине мы городили вышенаписанный XML, вместо того чтобы сделать простой триггер
по эвенту – в этом случае вытащить имя сети из содержимого эвента нельзя, а из-за
бага выбрать нужную сеть мы тоже не можем.

Задание на создание маршрута готово, теперь создаем задание на его удаление. Оно будет такое же, кроме пары отличий – в параметре команды ROUTE задаем delete 192.168.2.0, а в XML-копипасте ставим EventID=10001.

Теперь
подключаемся к нашему VPN
и делаем route print. Как видим, маршрут появился сам по
себе. Магия!

А теперь
отключаемся и видим, что маршрут пропал.

Спасибо за
внимание.


This entry was posted
on Пятница, 27 ноября, 2020 at 02:04 and is filed under technical.
You can follow any responses to this entry through the RSS 2.0 feed.

You can leave a response, or trackback from your own site.

Содержание

  1. Автоматическое добавление статических маршрутов после подключения к VPN
  2. Записки IT специалиста
  3. Автоматическое добавление маршрутов для VPN-соединения в Windows
  4. Дополнительные материалы:
  5. Как прописать статический маршрут в Windows 10
  6. Настройка маршрутизации win 10, как сделать раздельное использование 2х сетевых интерфейсов?
  7. Решения о маршрутизации для VPN
  8. Конфигурация разделение туннеля
  9. Конфигурация принудительного использования туннеля
  10. Настройка маршрутизации

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

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

Допустим, вы хотите, чтобы через ваше VPN подключение маршрутизировались только пакеты для двух подсетей (192.168.111.24/ и 10.1.0.0/16), а весь основной трафик должен идти через вашего провайдера.

Откройте консоль PowerShell и выведите список всех настроенных VPN подключений в Windows:

get vpnconnection vyvesti spisok vpn podklyuchenij

В первую очередь нужно отключить опцию “Use default gateway in remote network” (Использовать основной шлюз в удаленной сети). Это можно сделать в свойствах VPN подключения в панели управления или командой:

otklyuchit opciyu ispolzovat osnovnoj shlyuz v uda

Добавим два статических маршрута для нашего VPN-соединения:

add vpnconnectionroute dobavit staticheskij marshru

Если у вас активно VPN подключение, вам нужно переподключиться, чтобы новые маршруты добавились в таблицу маршрутизации.

tablica marshrutizacii pri aktivnom vpn v windows 1

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

Отключитесь от VPN и проверьте таблицу маршрутизации. Маршрут к вашей удаленной сети удалился автоматически, а Get-NetRoute вернет, что маршрут не найден:

marshut avtomaticheski udalyaetsya posle otklyucheniya ot

Например, можно создать командный файл vpn_route.netsh для добавления маршрутов.

interface ipv4
add route prefix=192.168.111.24 interface=»workVPN» store=active
add route prefix=10.1.0.0/16 interface=»workVPN» store=active
exit

Данный файл нужно запускать через задание планировщика, которое срабатывает на событие установки VPN подключения в Event Viewer (RasMan 20225)

Источник

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

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

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

Но вернемся к нашему вопросу. Для добавления маршрутов в удаленную сеть традиционно использовали несколько методов:

В тоже время начиная с Windows 8 существует штатное решение в виде командлета PowerShell, которое позволяет привязать маршруты к VPN-подключению и добавлять их при его запуске, при отключении соединения маршруты будут автоматически удалены.

Запустим консоль PowerShell и прежде всего узнаем имена имеющихся в системе VPN-подключений:

Результатом работы команды будет информация обо всех коммутируемых подключениях, нас интересует поле Name:

Add VPNConnectionRoute 001Теперь добавим маршрут к удаленной сети для подключения с именем L2TP MT:

Add VPNConnectionRoute 002 thumb 600xauto 12377Теперь проверим как это все работает. Проверим таблицу маршрутизации при отключенном VPN-подключении и убедимся, что маршруты в удаленную сеть отсутствуют:

Данная команда добавит маршрут к узлу 192.168.111.101, к другим узлам удаленной сети доступа у VPN-пользователя не будет.

Чтобы удалить маршрут следует воспользоваться командой Remove-VPNConnectionRoute, синтаксис которой полностью повторяет команду добавления маршрута:

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

Важно! Данные возможности не поддерживаются в Windows 7.

Дополнительные материалы:

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

y100g

Или подпишись на наш Телеграм-канал: telegram36

Источник

Как прописать статический маршрут в Windows 10

У некоторых Интернет-провайдеров иногда возникает необходимость дополнительно прописать статический маршрут. Например, для работы файлообменных сетей DC++ и torrent. Если Вы подключены через роутер, то все настройки маршрутизации делаются на нём, а на компьютере ничего дополнительно указывать не нужно.

В открывшемся черном окне консоли нужно прописать маршруты используя команду route.

Параметры команды:
-f Очистка таблиц маршрутов от записей всех шлюзов. При указании одной из команд таблицы очищаются до выполнения команды.
-p При использовании с командой ADD задает сохранение маршрута при перезагрузке системы. По умолчанию маршруты не сохраняются при перезагрузке. Пропускается для остальных команд, изменяющих соответствующие постоянные маршруты.
-4 Обязательное использование протокола IPv4.
-6 Обязательное использование протокола IPv6.
Одна из следующих команд:
PRINT Печать маршрута
ADD Добавление маршрута
DELETE Удаление маршрута
CHANGE Изменение существующего маршрута
destination Адресуемый узел.
MASK Указывает, что следующий параметр интерпретируется как маска сети.
netmask Значение маски подсети для записи данного маршрута. Если этот параметр не задан, по умолчанию используется значение 255.255.255.255.
gateway Шлюз.
interface Номер интерфейса для указанного маршрута.
METRIC Определение метрики, т.е. цены для адресуемого узла.

Для примера рассмотрим три основных подсети, используемые как локальные:

192.168.0.0/16
10.0.0.0/8
172.16.0.0/16

Соответственно, Вам надо будет прописать 3 вот такие строки:

Например, Ваш шлюз 192.168.50.1, тогда команды будут выглядеть так:

route delete 192.168.0.0
route delete 10.0.0.0
route delete 172.16.0.0

Источник

Настройка маршрутизации win 10, как сделать раздельное использование 2х сетевых интерфейсов?

Всем доброго времени суток!
Друзья помогите решить вопрос.
Есть роутер. (роутер получает интернет через локальную сеть по протоколу PPTP. далее раздает. ) К роутеру подключена машинка под управлением win10. Возникла задача поднять VPN и часть трафика (для определенных программ) пускать через vpn. Для этих целей я поставил OpenVpn. Все работает, но! весь трафик сейчас проходит через подключение (openVpn)

Что я пытался сделать:
1. Долго гуглил (ничего толкового не нашел)
2. Перенастроить маршрутизацию, но ничего из этого не вышло (возможно знаний не хватает)
3. Пытался колдовать с фаерволом (ESET NOD32 Smart Security)

(может пригодится)
Карта маршрутов при обычном подключении
3f85b4002f414d6498dced1994a1113c
Карта маршрутов при выключенном OpenVpn
54ec452892e04d42a736b93ae0f52a56

11540352d8024a928dc33b3d9e0db91b

11540352d8024a928dc33b3d9e0db91b

11540352d8024a928dc33b3d9e0db91b

11540352d8024a928dc33b3d9e0db91b

11540352d8024a928dc33b3d9e0db91b

У меня если что стандартное подключение, получает все адреса от роутера на автомате.
7c66f62797c7480aba174e0e2a19225a

Люди добрые! Что я делаю не так?
(по идее должно работать)

/////
Так, вроде я решил проблему )

1. В конфиге openVPN (вверху) добавляем.
route 0.0.0.0 128.0.0.0 net_gateway
route 128.0.0.0 128.0.0.0 net_gateway
(тем самым мы пускаем весь трафик через стандартное подключение)

2. Лезем сюда и ставим: https://r1ch.net/projects/forcebindip
(Эта штуковина управляет нужными нам прогами, и говорит им «туды ходи и через эту дверь» Но вы поняли. )
(На дворе 2016 год! и к сожалению винда не умеет решать подобные задачи штатными средствами)

3. (для тех кому лень постоянно в командной строке писать)
Для нужной нам проги (какую хотим запускать) делаем батник (запускаем от имени админа)
В батнике пишем (для примера сделал для Хрома)
ForceBindIP.exe 10.211.1.1 «C:Program Files (x86)GoogleChromeApplicationchrome.exe»

4. Ип интерфейса узнаем (он постоянно меняется) в «сведения о сетевом подключении»
(либо команда: route print)

PS: Получились грабли )) но зато работает все! проверил 3ри раза!
Если у кого появится свои варианты решения данных задач, буду рад их изучить.

Источник

Решения о маршрутизации для VPN

Относится к:

Сетевые маршруты необходимы сетевому стеку, чтобы понять, какой интерфейс использовать для исходящего трафика. Один из важнейших критериев принятия решений о конфигурация VPN состоит в том, хотите ли вы отправлять все данные по VPN (принудительное использование тоннеля) или передавать только часть данных по VPN (разделение туннеля). Этот выбор влияет на планирование конфигурации и ресурсов, а также на уровень безопасности соединения.

Конфигурация разделение туннеля

В конфигурации с разделением туннеля можно указать маршруты, которые будут проходить через VPN, а весь другой трафик будут проходить через физический интерфейс.

Маршруты можно настроить с помощью параметра VPNv2/имя_профиля/RouteList в разделе Поставщик службы конфигурации (CSP) VPNv2.

Для каждого элемента маршрута в списке можно указать следующие параметры.

Адрес: VPNv2/ProfileName/RouteList/routeRowId/Address

Размер префикса: VPNv2/ProfileName/RouteList/routeRowId/Prefix

Маршрут исключения: VPNv2/ProfileName/RouteList/routeRowId/ExclusionRoute

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

Для приложений VPN платформы UWP маршруты также можно добавить во время подключении через сервер.

Конфигурация принудительного использования туннеля

В конфигурации с принудительным туннелированием весь трафик проходит через VPN. Это конфигурация по умолчанию, которая используется, если маршруты не заданы.

Этот параметр предназначен только для обработки записей маршрутизации. Для принудительного туннеля VPN V4 и V6 маршруты по умолчанию (например, 0.0.0.0/0) добавляются в таблицу маршрутизации с более низкой метрикой, чем для других интерфейсов. При этом трафик передается через VPN, пока не существует маршрута через физический интерфейс.

Для встроенной VPN этой настройкой можно управлять с помощью параметра MDM VPNv2/имя_профиля/NativeProfile/RoutingPolicyType.

Для подключаемого модуля VPN платформы UWP это свойство управляется непосредственно приложением. Если подключаемый модуль VPN указывает маршруты по умолчанию для IPv4 и IPv6 как единственные два маршрута включения, платформа VPN отмечает, что для туннель используется для подключения принудительно.

Настройка маршрутизации

Сведения о настройке XML см. в разделе Параметры профиля VPN и VPNv2 CSP.

При настройке VPN-профиля в Microsoft Intune установите флажок, чтобы включить конфигурацию с разделением туннеля.

vpn split

Затем в разделе Корпоративные границы добавьте маршруты, которые будут использовать VPN-подключение.

Источник

Содержание

  • 1 [Routing] Шпаргалка про роутинг в Windows
  • 2 Как прописать статический маршрут в windows с помощью утилиты командной строки route
  • 3 Как прописать статический маршрут в windows с помощью утилиты командной строки route
  • 4 Добавление маршрута windows
  • 5 вывести на экран все содержимое таблицы IP-маршрутизации, введите команду:

[Routing] Шпаргалка про роутинг в Windows

Привет, %username%! Поскольку часто приходится настраивать ВПНы на чужих машинах и предоставлять доступ к каки-либо ресурсам нашей сети, а чаще всего это просто конкретные машины, то надо записать себе шпаргалку по добавлению статических маршрутов в ОСях семейства Windows (XP/7/8/8.1). Все элементарно и просто.

Синтаксис

route [-f] [-p] [*команда* [*конечная_точка*] [mask <маска_сети>] [<шлюз>] [metric <метрика>]] [if <интерфейс>]] 

Параметры

  • -f — Очищает таблицу маршрутизации от всех записей, которые не являются узловыми маршрутами (маршруты с маской подсети 255.255.255.255), сетевым маршрутом замыкания на себя (маршруты с конечной точкой 127.0.0.0 и маской подсети 255.0.0.0) или маршрутом многоадресной рассылки (маршруты с конечной точкой 224.0.0.0 и маской подсети 240.0.0.0). При использовании данного параметра совместно с одной из команд (таких, как add, change или delete) таблица очищается перед выполнением команды.

  • -p — При использовании данного параметра с командой add указанный маршрут добавляется в реестр и используется для инициализации таблицы IP-маршрутизации каждый раз при запуске протокола TCP/IP. По умолчанию добавленные маршруты не сохраняются при запуске протокола TCP/IP. При использовании параметра с командой print выводит на экран список постоянных маршрутов. Все другие команды игнорируют этот параметр. Постоянные маршруты хранятся в реестре по адресу HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes

  • команда — Указывает команду, которая будет запущена на удаленной системе.

Список допустимых параметров:

Команда  Назначение
add  Добавление маршрута
change  Изменение существующего маршрута
delete  Удаление маршрута или маршрутов
print Печать маршрута или маршрутов
  • конечная_точка — Определяет конечную точку маршрута. Конечной точкой может быть сетевой IP-адрес (где разряды узла в сетевом адресе имеют значение 0), IP-адрес маршрута к узлу, или значение 0.0.0.0 для маршрута по умолчанию.

  • mask <маска_сети> Указывает маску сети (также известной как маска подсети) в соответствии с точкой назначения. Маска сети может быть маской подсети соответствующей сетевому IP-адресу, например 255.255.255.255 для маршрута к узлу или 0.0.0.0. для маршрута по умолчанию. Если данный параметр пропущен, используется маска подсети 255.255.255.255. Конечная точка не может быть более точной, чем соответствующая маска подсети. Другими словами, значение разряда 1 в адресе конечной точки невозможно, если значение соответствующего разряда в маске подсети равно 0.

  • шлюз — Указывает IP-адрес пересылки или следующего перехода, по которому доступен набор адресов, определенный конечной точкой и маской подсети. Для локально подключенных маршрутов подсети, адрес шлюза — это IP-адрес, назначенный интерфейсу, который подключен к подсети. Для удаленных маршрутов, которые доступны через один или несколько маршрутизаторов, адрес шлюза — непосредственно доступный IP-адрес ближайшего маршрутизатора.

  • metric <метрика> — Задает целочисленную метрику стоимости маршрута (в пределах от 1 до 9999) для маршрута, которая используется при выборе в таблице маршрутизации одного из нескольких маршрутов, наиболее близко соответствующего адресу назначения пересылаемого пакета. Выбирается маршрут с наименьшей метрикой. Метрика отражает количество переходов, скорость прохождения пути, надежность пути, пропускную способность пути и средства администрирования.

  • if <интерфейс> — Указывает индекс интерфейса, через который доступна точка назначения. Для вывода списка интерфейсов и их соответствующих индексов используйте команду route print. Значения индексов интерфейсов могут быть как десятичные, так и шестнадцатеричные. Перед шестнадцатеричными номерами вводится . В случае, когда параметр if пропущен, интерфейс определяется из адреса шлюза.

  • /? — Отображает справку в командной строке.

Примечания

  • Большие значения в столбце metric таблицы маршрутизации — результат возможности протокола TCP/IP автоматически определять метрики маршрутов таблицы маршрутизации на основании конфигурации IP-адреса, маски подсети и стандартного шлюза для каждого интерфейса ЛВС. Автоматическое определение метрики интерфейса, включенное по умолчанию, устанавливает скорость каждого интерфейса и метрики маршрутов для каждого интерфейса так, что самый быстрый интерфейс создает маршруты с наименьшей метрикой. Чтобы удалить большие метрики, отключите автоматическое определение метрики интерфейса в дополнительных свойствах протокола TCP/IP для каждого подключения по локальной сети.
  • Имена могут использоваться для параметра <конечная_точка>, если существует соответствующая запись в файле базы данных Networks, находящемся в папке *системный_корневой_каталог*System32DriversEtc. В параметре <шлюз> можно указывать имена до тех пор, пока они разрешаются в IP-адреса с помощью стандартных способов разрешения узлов, таких как запрос службы DNS, использование локального файла Hosts, находящегося в папке *системный_корневой_каталог*system32driversetc, или разрешение имен NetBIOS.
  • Если команда — print или delete, параметр <шлюз> опускается и используются подстановочные знаки для указания точки назначения и шлюза. Значение <конечной_точки> может быть подстановочным значением, которое указывается звездочкой (*). При наличии звездочки (*) или вопросительного знака (?) в описании конечной точки, они рассматриваются как подстановки, тогда печатаются или удаляются только маршруты, соответствующие точке назначения. Звездочка соответствует любой последовательности символов, а вопросительный знак — любому одному символу. 10.*.1, 192.168.*, 127.* и *224* являются допустимыми примерами использования звездочки в качестве подстановочного символа.
  • При использовании недопустимой комбинации значений конечной точки и маски подсети (маски сети) выводится следующее сообщение об ошибке: Маршрут: неверная маска подсети адреса шлюза. Ошибка появляется, когда одно или несколько значений разрядов в адресе конечной точки равно 1, а значения соответствующих разрядов маски подсети — 1. Для проверки этого состояния выразите конечную точку и маску подсети в двоичном формате. Маска подсети в двоичном формате состоит из последовательности единичных битов, представляющей часть сетевого адреса конечной точки, и последовательности нулевых битов, обозначающей часть адреса узла конечной точки. Проверьте наличие единичных битов в части адреса точки назначения, которая является адресом узла (как определено маской подсети).
  • Параметр -p поддерживается в команде route только в операционных системах Windows NT 4.0, Windows 2000, Windows Millennium Edition и Windows XP. Этот параметр не поддерживается командой route в системах Windows 95 и Windows 98.
  • Эта команда доступна, только если в свойствах сетевого адаптера в объекте Сетевые подключения в качестве компонента установлен протокол Интернета (TCP/IP).

Примеры

Чтобы вывести на экран все содержимое таблицы IP-маршрутизации, введите команду:

route print 

Чтобы вывести на экран маршруты из таблицы IP-маршрутизации, которые начинаются с *10.*, введите команду:

route print 10.* 

Чтобы добавить маршрут по умолчанию с адресом стандартного шлюза 192.168.12.1, введите команду:

route add 0.0.0.0 mask 0.0.0.0 192.168.12.1 

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 

Чтобы добавить постоянный маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1, введите команду:

route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1 

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и метрикой 7, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7 

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и использованием индекса интерфейса 0х3, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3 

Чтобы удалить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0, введите команду:

route delete 10.41.0.0 mask 255.255.0.0 

Чтобы удалить все маршруты из таблицы IP-маршрутизации, которые начинаются с *10.*, введите команду:

route delete 10.* 

Чтобы изменить следующий адрес перехода для маршрута с конечной точкой 10.41.0.0 и маской подсети 255.255.0.0 с 10.27.0.1 на 10.27.0.25, введите команду:

route change 10.41.0.0 mask 255.255.0.0 10.27.0.25 

На этом все! Profit!

Обсудить статью в чате TG или в Slack

Как прописать статический маршрут в windows с помощью утилиты командной строки route

Как прописать статический маршрут в windows с помощью утилиты командной строки route

добавление маршрута windows

Всем привет сегодня расскажу как прописать статический маршрут в windows с помощью утилиты командной строки route и как посмотреть таблицу маршрутизации Windows. Утилита route выводит на экран и изменяет записи в локальной таблице IP-маршрутизации. Когда вам может потребоваться добавление маршрута windows, тут за примером далеко ходить не нужно, самое простое, что вам нужно направить трафик до определенной локальной сети, понятно что все маршруты должен знать шлюз по умолчанию, но не всегда это возможно выполнить по ряду причин и не правильном построении сети. Кстати если кому интересно, то я рассказывал, как делается настройка маршрутов в centos, советую посмотреть для расширения кругозора.

Добавление маршрута windows

Добавление маршрута Windows начинается с изучения синтаксиса команды отвечабщего за это, открываем командную строку от имени администратора и вводим вот такую команду:

Запущенная без параметров, команда route выводит справку.

route [-f] [-p] [команда [конечная_точка] [mask маска_сети] [шлюз] [metric метрика]] [if интерфейс]]Utilita-komandnoy-stroki-Route.jpg

Утилита командной строки Route

  • -f Очищает таблицу маршрутизации от всех записей, которые не являются узловыми маршрутами (маршруты с маской подсети 255.255.255.255), сетевым маршрутом замыкания на себя (маршруты с конечной точкой 127.0.0.0 и маской подсети 255.0.0.0) или маршрутом многоадресной рассылки (маршруты с конечной точкой 224.0.0.0 и маской подсети 240.0.0.0). При использовании данного параметра совместно с одной из команд (таких, как add, change или delete) таблица очищается перед выполнением команды.
  • -p При использовании данного параметра с командой add указанный маршрут добавляется в реестр и используется для инициализации таблицы IP-маршрутизации каждый раз при запуске протокола TCP/IP. По умолчанию добавленные маршруты не сохраняются при запуске протокола TCP/IP. При использовании параметра с командой print выводит на экран список постоянных маршрутов. Все другие команды игнорируют этот параметр. Постоянные маршруты хранятся в реестре по адресу HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes команда Указывает команду, которая будет запущена на удаленной системе. В следующей таблице представлен список допустимых параметров.
  • add > Добавление маршрута
  • change > Изменение существующего маршрута
  • delete > Удаление маршрута или маршрутов
  • print > Печать маршрута или маршрутов

Конечная точка определяет конечную точку маршрута. Конечной точкой может быть сетевой IP-адрес (где разряды узла в сетевом адресе имеют значение 0), IP-адрес маршрута к узлу, или значение 0.0.0.0 для маршрута по умолчанию. mask маска_сети Указывает маску сети (также известной как маска подсети) в соответствии с точкой назначения. Маска сети может быть маской подсети соответствующей сетевому IP-адресу, например 255.255.255.255 для маршрута к узлу или 0.0.0.0. для маршрута по умолчанию. Если данный параметр пропущен, используется маска подсети 255.255.255.255. Конечная точка не может быть более точной, чем соответствующая маска подсети. Другими словами, значение разряда 1 в адресе конечной точки невозможно, если значение соответствующего разряда в маске подсети равно 0. шлюз Указывает IP-адрес пересылки или следующего перехода, по которому доступен набор адресов, определенный конечной точкой и маской подсети. Для локально подключенных маршрутов подсети, адрес шлюза — это IP-адрес, назначенный интерфейсу, который подключен к подсети. Для удаленных маршрутов, которые доступны через один или несколько маршрутизаторов, адрес шлюза — непосредственно доступный IP-адрес ближайшего маршрутизатора. metric метрика Задает целочисленную метрику стоимости маршрута (в пределах от 1 до 9999) для маршрута, которая используется при выборе в таблице маршрутизации одного из нескольких маршрутов, наиболее близко соответствующего адресу назначения пересылаемого пакета. Выбирается маршрут с наименьшей метрикой. Метрика отражает количество переходов, скорость прохождения пути, надежность пути, пропускную способность пути и средства администрирования. if интерфейс Указывает индекс интерфейса, через который доступна точка назначения. Для вывода списка интерфейсов и их соответствующих индексов используйте команду route print. Значения индексов интерфейсов могут быть как десятичные, так и шестнадцатеричные. Перед шестнадцатеричными номерами вводится 0х. В случае, когда параметр if пропущен, интерфейс определяется из адреса шлюза. /? Отображает справку в командной строке.

dobavlenie-marshruta-windows-3.png

Большие значения в столбце metric таблицы маршрутизации — результат возможности протокола TCP/IP автоматически определять метрики маршрутов таблицы маршрутизации на основании конфигурации IP-адреса, маски подсети и стандартного шлюза для каждого интерфейса ЛВС. Автоматическое определение метрики интерфейса, включенное по умолчанию, устанавливает скорость каждого интерфейса и метрики маршрутов для каждого интерфейса так, что самый быстрый интерфейс создает маршруты с наименьшей метрикой. Чтобы удалить большие метрики, отключите автоматическое определение метрики интерфейса в дополнительных свойствах протокола TCP/IP для каждого подключения по локальной сети.

Имена могут использоваться для параметра конечная_точка, если существует соответствующая запись в файле базы данных Networks, находящемся в папке системный_корневой_каталогSystem32DriversEtc. В параметре шлюз можно указывать имена до тех пор, пока они разрешаются в IP-адреса с помощью стандартных способов разрешения узлов, таких как запрос службы DNS, использование локального файла Hosts, находящегося в папке системный_корневой_каталогsystem32driversetc, или разрешение имен NetBIOS.

вывести на экран все содержимое таблицы IP-маршрутизации, введите команду:

route print

либо команду

netstat -r

dobavlenie-marshruta-windows.jpg

Чтобы вывести на экран маршруты из таблицы IP-маршрутизации, которые начинаются с 10., введите команду:

route print 10.*

dobavlenie-marshruta-windows-2.jpg

Чтобы добавить маршрут по умолчанию с адресом стандартного шлюза 192.168.12.1, введите команду:

route add 0.0.0.0 mask 0.0.0.0 192.168.12.1

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1

Чтобы добавить постоянный маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1, введите команду:

route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и метрикой стоимости 7, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и использованием индекса интерфейса 0х3, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3

Узнать ID нужного вам интерфейса поможет заметка Как посмотреть id интерфейса windows

Чтобы удалить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0, введите команду:

route delete 10.41.0.0 mask 255.255.0.0

Чтобы удалить все маршруты из таблицы IP-маршрутизации, которые начинаются с 10., введите команду:

route delete 10.*

Чтобы изменить следующий адрес перехода для маршрута с конечной точкой 10.41.0.0 и маской подсети 255.255.0.0 с 10.27.0.1 на 10.27.0.25, введите команду:

route change 10.41.0.0 mask 255.255.0.0 10.27.0.25

Как видите добавление статического маршрута в операционной системе Windows очень простое дело и не требует особых навыков от администратора.

Материал сайта pyatilistnik.org

Ноя 14, 2014 02:24 Задайте вопрос Быстрый доступ

Windows 10 IT Pro > Windows 10

  • Общие обсуждения

  • В Windows 10 при добавлении статического маршрута, например route ADD -p 192.168.15.0 mask 255.255.255.0 192.168.10.1 METRIC 1, Windows 10 маршрут запоминает, но при следующем переконнекте VPN у неё наступает амнизия, вроде бы и маршрут то есть (при попытке его повторно добавить она сообщает об этом) но он не фига не работает пока его опять не добавить, VPN соединяем, подсоединяем и опять амнизия, как это лечить или это баг такой (что скорее всего так и есть)
    • Изменен тип26 апреля 2016 г. 11:48Тема переведена в разряд обсуждений по причине отсутствия активности

    19 апреля 2016 г. 9:45 Ответить | Цитировать

Все ответы

  • От админа выполняете? Есть нюанс что на лету он применяется но если делать не от админа то в конфиг он не записывается соответственно изза отсутствия прав…19 апреля 2016 г. 13:13 Ответить | Цитировать
  • а что показывает route print в момент «амнезии»?

    Сазонов Илья

    https://isazonov.wordpress.com/19 апреля 2016 г. 13:54 Ответить | Цитировать

  • 19 апреля 2016 г. 14:47 Ответить | Цитировать
  • Говорит, что такой маршрут есть в статических:

    на скрине VPN соединен, маршрут есть, выхлопа нет, что видно по скрину с пинг, опять добавляю статический маршрут (не отключая VPN естественно) опа, ответы поползли…

    19 апреля 2016 г. 15:15 Ответить | Цитировать

  • 19 апреля 2016 г. 15:22 Ответить | Цитировать
  • Три раза запускал трассировку 1. VPN есть маршрут работает норм. 2. VPN отключен 3. VPN обратно включил, но маршрут повторно не добавлял (т.к. он и так в статике). В настройках галка использовать шлюз не стоит, иначе только с одним ресурсом и останусь) а так не надо.
    • Изменено19 апреля 2016 г. 15:48уточнение

    19 апреля 2016 г. 15:46 Ответить | Цитировать

  • так, у вас роут через 10 сеть, а это гдекто? сейчас вам ответчает 59 сеть (наверное ваш шлюз по умолчанию)

    покажите ipconfig /all

    19 апреля 2016 г. 16:04 Ответить | Цитировать

  • верно, отвечает шлюз 59й сети, в который находится комп.

    Скрин смогу завтра уже снять. Замечу, что совершенно в другой сети, в другом месте, но на Windows 10 такая же петрушка, маршрут уже есть, но не работает пока не ткнешь его еще раз добавить…

    19 апреля 2016 г. 17:07 Ответить | Цитировать

  • Для полноты картины: это же на Windows 7/8 работает? Если да, то пишите feedback

    Сазонов Илья

    https://isazonov.wordpress.com/20 апреля 2016 г. 3:06 Ответить | Цитировать

  • Ну это дело явно не в ОС и правах пользователя.

    Не видно, что используется, но предположу что Hamachi либо OpenVPN

    который при запуске соединения переписывает таблицу маршрутизации.

    Т.е. исправить нужно это в клиенте либо VPN — ведь он отличается от «родного»

    20 апреля 2016 г. 15:41 Ответить | Цитировать

  • Нашел данную тему в поисках решения этой же проблемы.

    У меня нет ни Hamachi, ни OpenVPN, чистая установка ОС, но проблема та же. Проблемы нет на Win 7, 8, 8.1. Первый раз столкнулся с ней на 10.

    Подключил VPN. Адрес VPN-сервера 192.168.2.1, адрес подсети, к которой нужен доступ, 172.16.0.0/24. Маршрут уже есть в эту подсеть, однако пакеты не маршрутизируются. Добавляешь этот существующий маршрут еще раз, пишет, что такой объект есть, и тут же пакеты начинают ходить.

    Скриншоты в подтверждение.

    Неужели никто с таким не сталкивался?

26 ноября 2016 г. 10:16 Ответить | Цитировать

  • 26 ноября 2016 г. 10:17 Ответить | Цитировать
  • Попробуйте проверить на последней сборке превью. Если ошибка сохранится, то прямо из превью создайте Feedback.

    Сазонов Илья

    https://isazonov.wordpress.com/26 ноября 2016 г. 10:47 Ответить | Цитировать

  • только что проверил свой VPN. у меня другая таблица маршрутизации. Все удалённые сети находятся не за шлюзом (192.168.2.1), а за IP адресом VPN подключения — 192.168.2.37 — всё работает. покажите tracert 172.16.0.3 до route add и после.26 ноября 2016 г. 12:06 Ответить | Цитировать
  • покажите tracert 172.16.0.3 до route add и после.

    Странно, не правда ли?

    26 ноября 2016 г. 12:38 Ответить | Цитировать

  • да, странно.

    26 ноября 2016 г. 13:04 Ответить | Цитировать

  • да, странно.

    Шлюз в удаленной сети — это плохо. Всякие клиентские торренты будут через него лезть, поэтому это все забанено.

    Не очень знаком с 10-кой. По поводу этих feedback куда их надо слать? В магазине есть Центр отзывов. Его и надо использовать?

    26 ноября 2016 г. 13:14 Ответить | Цитировать

  • VPN-сервер Микротик.

    тип VPN какой? я у себя проверю.26 ноября 2016 г. 13:17 Ответить | Цитировать

  • 26 ноября 2016 г. 13:18 Ответить | Цитировать
  • 26 ноября 2016 г. 13:25 Ответить | Цитировать
  • Добрый день.

    Была аналогичная проблема, но проявлялась на всех ОС (7, 8,1, 10).

    Все заработало на всех ОС( и на 10ке), сервер VPN — «Микротик».

    Небольшой «акцент»: «Далее нам предлагается возможность сделать обновление для таблицы маршрутизации. Если это актуально, добавляем файл маршрутов. Приведу пример файла маршрута. Допустим, мы хотим, чтобы клиент ходил в сеть 192.168.0.0/24 через наше VPN подключение (VPN-сеть имеет отличную адресацию от сети 192.168.0.0/24), при этом шлюз по умолчанию у него должен остаться свой. Тогда мы должны добавить текстовый файл с маршрутом такого содержания:«ADD 192.168.0.0 MASK 255.255.255.0 default METRIC default IF default». Внимание! Файл должен быть обязательно в кодировке ANSI, а не UTF-8, например. Если мы убрали галочку с пункта «Сделать это подключение основным шлюзом клиента» никаких директив REMOVE_GATEWAY здесь писать не нужно. «

    28 ноября 2016 г. 11:05 Ответить | Цитировать

  • «Далее нам предлагается возможность сделать обновление для таблицы маршрутизации. Если это актуально, добавляем файл маршрутов. Приведу пример файла маршрута. Допустим, мы хотим, чтобы клиент ходил в сеть 192.168.0.0/24 через наше VPN подключение (VPN-сеть имеет отличную адресацию от сети 192.168.0.0/24), при этом шлюз по умолчанию у него должен остаться свой. Тогда мы должны добавить текстовый файл с маршрутом такого содержания:

    «ADD 192.168.0.0 MASK 255.255.255.0 default METRIC default IF default».

    Добрый день!

    Согласитесь, что это не решение проблемы. Это другие пути решения вопроса при имеющейся проблеме. И факт в том, что маршрутизация работает не в соответствии с таблицей маршрутизации.

    28 ноября 2016 г. 12:23 Ответить | Цитировать

  • Проблема так и не решилась? или с обновлениями ушла?9 октября 2017 г. 2:55 Ответить | Цитировать
  • Проблема так и не решилась? или с обновлениями ушла?

    Нет, не решилась ни с какими обновлениями.9 октября 2017 г. 10:59 Ответить | Цитировать

  • Поддерживаю. Столкнулся с этой проблемой. В моем случае затык еще в том что у пользователя нет административных привилегий чтобы изменить таблицу маршрутизации. Так что вариант со CMAK не прокатывает(. Пока решения я не нашел. И при подключении к L2TP проблема не уходит. То есть дело именно в ядре… 12 октября 2017 г. 11:29 Ответить | Цитировать
  • Поддерживаю. Столкнулся с этой проблемой. В моем случае затык еще в том что у пользователя нет административных привилегий чтобы изменить таблицу маршрутизации. Так что вариант со CMAK не прокатывает(. Пока решения я не нашел. И при подключении к L2TP проблема не уходит. То есть дело именно в ядре… 

    работает нормально либо с OVPN, т.е. на компе стоит клиент, который установлен с правами админа изначально, поэтому при поднятии соединения нужные маршруты сразу прописываются.

    либо нормально при условии получения маршрутов от DHCP-сервера, права админа для этого не нужны. Но такое возможно только с Microsoft RRAS.

    12 октября 2017 г. 13:11 Ответить | Цитировать

  • Спасибо за наводку с OVPN. Но это тоже коленка. 

    Остается надеяться что когда-нибудь исправят.

    13 октября 2017 г. 6:09 Ответить | Цитировать

  • при добавлении постоянного маршрута, обязательно указывай id VPN интерфейса из списка интерфейсов при выводе «route print», как в справке по утилите: route -p add <net> mask  <mask><gatewetric if=»»>14 декаЏ 2017 г. 11:02 Ответить | Цитировать </gatewetric></mask></net>
  • 28 декабря 2017 г. 10:55 Ответить | Цитировать
  • </li></ul>

    </section></div>Используемые источники:

    • https://jtprog.ru/windows-route-add/
    • http://pyatilistnik.org/kak-propisat-staticheskiy-marshrut-v-windows-s-pomoshhyu-utilityi-komandnoy-stroki-route/
    • https://social.technet.microsoft.com/forums/ru-ru/de07864b-eadf-4502-a642-3779a97152bc/windows-10-10851077-1079107210871086108410801085107210771090

    I’m trying on my W10 to perform an automatic «route» command after a successful VPN connection. I tried it based on this short description here which is for W7 but seems so similar, but I can’t make it work.

    • My VPN connection is ok. It connects and disconnect anytime without problems.
    • My route command is ok. If I launch it manually after connecting the VPN everything works fine.
    • Of course, my VPN connection doesn’t use the remote gateway as a default gateway. I want to do «split tunneling».

    I investigated and the Windows event 20225 is still the same on W10 (RAS Connection Establishement). So this is right… why is not triggering the route command? I can see the 20225 events with RasClient as source in the application event viewer after connecting the VPN.

    Of course, before trying all of this stuff, I tried to creating the route «persistently» using -p parameter on route command but it doesn’t work because the VPN interface doesn’t exist when this route is added on every boot, so is not a valid option. So must be scheduled.

    I did the task with elevated privileges with the same result, and marked the «Execute with elevated privileges» checkbox as well. The task appears as «never started». And if I try to launch it manually, it says «Task Scheduler service is not available. Task Scheduler will attemt to reconnect to it». But the task scheduler is working fine, other tasks can be scheduled or executed manually and they are working.

    Anybody achieved this successfully?

    EDIT
    I tried to change the trigger part to change «Basic» to «Custom» and I put a XPath filter in XML field trying to search for the event id:

    <QueryList>
      <Query Id="0" Path="Application">
        <Select Path="Application">*[System[(EventID=20225)]]</Select>
      </Query>
    </QueryList>
    

    It neither worked.

    The problem is the same. The task appears as «Never launched».

    EDIT2
    I noticed in event viewer that always, after a successful VPN connection (id 20225) there is always another event (id 900) which can be related… maybe everything is set up but something is blocking the trigger… I don’t know. See this screenshot (sorry, the screenshot is in spanish):

    event

    Здравствуйте.

    5fe6fd891e395629768192.png

    Имеем локальную сеть 192.168.0.0/21 шлюз по умолчанию 192.168.0.1.
    В этой же сети стоит MikroTik (192.168.0.104) и «раздает» VPN (10.10.1.0/28), его IP в VPN — 10.10.1.1.

    Удаленно за NAT имеем ПК с Windows 10 Pro. Пользователь заходит в систему через «Подключение к корпоративной сети с помощью VPN», когда на экране приветствия сразу подключается VPN по логин/пароль и с этими же данными заходит в систему (его IP в VPN выдается динамически, пусть будет 10.10.1.11).

    Все работает, но для Windows 10 не доступна сеть 192.168.0.0/21.

    На шлюзе 192.168.0.1 добавляем маршрут (10.10.1.1/28 192.168.0.104) до удаленного ПК через MikroTik. На удаленном ПК добавляем постоянный маршрут (192.168.0.0/24 10.10.1.1) до сети 192.168.0.0/24 через тот же MikroTik, только со стороны VPN.

    Теперь удаленный ПК и локальная сеть друг друга видят (это точно работает я проверил).

    А теперь собственно вопрос:
    Если на Windows 10 добавить постоянный маршрут (192.168.0.0/24 10.10.1.1) до подключения VPN, то он игнорируется системой и отрабатывает маршрут по умолчанию. То есть прописываем постоянный маршрут, перезагружаемся/выходим из системы, заходим в систему через «Подключение к корпоративной сети с помощью VPN», соединение есть, маршрут есть и он игнорируется. Удаляем и создаем маршрут по новой — работает до перезагрузки/перезахода/переподключения VPN.
    Как это вылечить?

    Спасибо.

    Добрый день, уважаемые читатели. Недавно столкнулся с одной проблемой, один из моих клиентов попросил настроить VPN тоннель на роутере для связи с одним из его серверов, я это настроил, но заметил, что после добавления VPN соединения на ПК с которого я подключаюсь к VPN серверу, доступ в интернет начинает по умолчанию идти через VPN подключение (что напрочь убивает скорость интернета на ПК). Я долго искал в интернете способы решения данного вопроса, но ничего толкового я не нашел.  Однако я понимал что дело в маршруте через который идет доступ в Интернет. Я долго копался в метриках и маршрутах и решил данную проблему следующим образом:

    1. Заходим в центр управления сетями и общим доступом и переходим во вкладку изменение параметров адаптера:

    centr upravleniya setiami i obshim dostupom

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

    О том как создать VPN подключение на ПК под управлением ОС семейства Windows я писал в своей статье.

    svoistva vpn

    3. Далее переходим во вкладку дополнительно:

    svoistva vpn-2

    4. Чтобы не использовать VPN сервер основным маршрутом выхода в Интернет ставим галочку на пункте «Отключить добавление маршрута основанное на классе» и сохраняем изменения.

    svoistva vpn-3

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

    route add 192.168.9.0 mask 255.255.255.0 192.168.2.1, где 192.168.9.0 — сетевой адрес, 255.255.255.0 — сетевая маска, 192.168.9.0 — сетевой шлюз (IP адреса настроенные на VPN сервере)

    route-add

    После этого при работе с VPN выход в интернет будет осуществляться через наш основной шлюз, т.е. проблема решена.

    Понравилась статья? Поделить с друзьями:
  • Windows 10 добавить пользователя для удаленного доступа
  • Windows 10 добавить локальную учетную запись администратора
  • Windows 10 до какого числа будет работать
  • Windows 10 для юридических лиц цена
  • Windows 10 для чего нужен пин код