При подключении к VPN пропадает Интернет в Windows

Пользователи при подключении из дома к корпоративному VPN серверу (будь то стандартный VPN сервер на Windows Server RRAS, или OpenVPN) жалуются, что у них не работает доступ в Интернет со своего компьютера при активном VPN подключении. В этой статье мы разберемся, почему пропадает доступ в Интернет в Windows при подключении к VPN и как исправить эту проблему.

При создании нового VPN подключения в Windows (всех версий) в его настройках по-умолчанию включена опция “Использовать основной шлюз удаленной сети” (Use default gateway on remote network). Это означает, что весь трафик с вашего компьютера отправляется через VPN туннель. Если на VPN сервере для удаленных клиентов разрешен доступ только к локальным ресурсам предприятия, и запрещен доступ в Интернет, то у пользователя на компьютере не будут открываться внешние веб-сайты и другие интернет-ресурсы. Соответственно, после отключения от VPN, весь трафик пользователя пойдет через обычную сеть и у него опять появится Интернет-доступ.

Включить режим Split Tunneling для VPN подключения

Режим, когда часть трафика отправляется через VPN туннель доступ к корпоративным ресурсам), а другая часть (доступ к ресурсам в Интернет) через локальное сетевое подключение называется split tunneling (раздельное туннелирование).

В Windows режим split tunneling можно включить тремя способами:

  • В настройках параметров TCP/IP VPN подключения;
  • С помощью фала rasphone.pbk;
  • С помощью PowerShell командлета Set-VpnConnection с параметром SplitTunneling

Самый простой способ – изменить настройки TCP/IP для вашего VPN подключения через графический интерфейс.

  1. Откройте список сетевых подключений в Панели управления (Control Panel\Network and Internet\Network Connections, для быстрого перехода выполните ncpa.cpl ) и откройте свойства вашего VPN подключения
  2. Перейдите на вкладку Networking, выберите Internet Protocol Version 4 (TCP/IPv4) и нажмите кнопку Properties;
  3. Нажмите кнопку Advanced;
  4. На вкладке IP Settings отключите опцию «Use default gateway on remote network«.
    Use default gateway on remote network

Переподключитесь к VPN и проверьте, что на компьютере теперь можно одновременно работать с корпоративными ресурсами и выходить в Интренет.

В некоторых билдах Windows 10 и 11 эта опция не работала (встречались разные проблемы: поле недоступно для редактирования, или настройка не сохраняется, или же не открываются настройки при нажатии на кнопку свойств TCP/IPv4), поэтому нужно рассмотреть и другие способы.

Файл rasphone.pbk с настройками VPN подключения находится в одном из следующим каталоге:

  • C:\ProgramData\Microsoft\Network\Connections\pbk\ – если вы создали VPN подключение для всех пользователей компьютера, или в каталоге профиля пользователя
  • C:\Users\username\AppData\Roaming\Microsoft\Network\Connections\Pbk – если VPN подключение создано только для текущего пользователя.

Откройте файл rasphone.pbk с помощью любого текстового редактора. В этом файле хранятся параметры всех настроенных VPN подключений. Найдите параметр IpPrioritizeRemote. По умолчанию его значение равно 1. Измените его на 0, сохраните файл rasphone.pbk и перезапустите VPN подключение.

rasphone.pbk IpPrioritizeRemote

Также вы можете настроить разделение VPN трафика с помощью PowerShell. Выведите список доступных VPN подключений:
Get-VpnConnection

Убедитесь, что опция SplitTunneling для данного подключения отключена ( SplitTunneling: False ).

PowerShell Get-VpnConnection включить SplitTunneling

Чтобы включить SplitTunneling, нужно указать имя вашего VPN подключения:

Set-VpnConnection –name vpn.winitpro.ru -SplitTunneling $true

Переподключитесь к VPN серверу и проверьте, что у вас на компьютере появился доступ в Интернет и сохранился доступ к корпоративным ресурсам за VPN шлюзом. Включение опции SplitTunneling аналогично отключению (Use default gateway on remote network) в настройках TCP/IPv4 для VPN подключения (после выполнения этой PowerShell команды галка на опции снимается).

Добавление статических маршрутов на клиенте

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

Во встроенном VPN клиенте Windows доступна опция автоматического добавления маршрутов после активации подключения. Чтобы добавить статический маршрут для вашего подключения, используется PowerShell команда:

Add-VpnConnectionRoute -ConnectionName "workVPN" -DestinationPrefix 10.0.0.0/16 –PassThru
Если используется сторониий VPN клиент, добавить маршруты можно с помощью команды route add. Например,

route add 192.168.13.0 mask 255.255.255.0 192.168.14.1

Где, 192.168.13.0 – удаленная сеть (за VPN), 192.168.14.1 – VPN шлюз. Чтобы сделать маршрут постоянным, добавьте опцию -p (не всегда применимо).

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

route print

Проверить, через какой интерфейс маршрутизируются пакеты к определенному хосту:

tracertoute myworkPC

Проверить, какой интерфейс будет использоваться для выхода в Интернет:

Get-NetRoute -DestinationPrefix 0.0.0.0/0

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

Rasdial.exe my_work_VPN_connection
route add route -p add адрес_сети MASK маска адрес_vpn [IF интерфейс]

Еще одной причиной, если с маршрутизацией все в порядке – использование DNS серверов для резолвинга имен, которые назначены VPN сервером. Если эти DNS сервера находятся в изолированном сегменте, вы не сможете отрезолвить имена внешних (Интернет) ресурсов. Подробности в статье Не работает разрешение имен DNS при VPN.

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


Предыдущая статья Следующая статья


Комментариев: 27 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)