Не подключается vpn l2tp windows

Исправляем проблему подключения к L2TP/IPSec VPN серверу за NAT

Столкнулись с интересной проблемой у одного из заказчиков после перенастройки VPN сервера Windows Server 2012 с PPTP на L2TP/ IPSec (из за отключения поддержки PPTP VPN в iOS). Изнутри корпоративной сети VPN клиенты без каких-либо проблем подключаются к VPN серверу, а вот внешние Windows клиенты при попытке установить соединение с L2TP VPN сервером, выдают такую ошибку:

The network connection between your computer and the VPN server could not be established because the remote server is not responding. This could be because one of the network devices (e.g. firewalls, NAT, routers, etc) between your computer and the remote server is not configured to allow VPN connections. Please contact your Administrator or your service provider to determine which device may be causing the problem.

В других версиях Windows о наличии аналогичной проблемы могут свидетельствовать ошибки VPN подключения 800, 794 или 809.

Стоит отметить, что данный VPN сервер находится за NAT, а на маршрутизаторе настроен проброс портов, необходимых для работы L2TP:

  • UDP 1701 — Layer 2 Forwarding Protocol (L2F) & Layer 2 Tunneling Protocol(L2TP)
  • UDP 500
  • UDP 4500 NAT-T – IPSec Network Address Translator Traversal
  • Protocol 50 ESP

В правилах Windows Firewall VPN сервера эти порты также открыты. Т.е. используется классическая конфигурация. Для подключения используется встроенный VPN клиент Windows.

VPN ошибка 809 для L2TP/IPSec в Windows за NAT

Как оказалось, проблема эта уже известна и описана в статье https://support.microsoft.com/en-us/kb/926179. По умолчанию встроенный VPN клиент Windows не поддерживает подключение к L2TP/IPsec через NAT. Дело в том, что IPsec использует протокол ESP (Encapsulating Security Payload) для шифрования пакетов, а протокол ESP не поддерживает PAT (Port Address Translation). Если вы хотите использовать IPSec для коммуникации, Microsoft рекомендует использовать белые IP адреса на VPN сервере.

Но есть и обходное решение. Можно исправить этот недостаток, включив поддержку протокола NATT, который позволяет инкапсулировать пакеты протокола ESP 50 в UDP пакеты по порту 4500. NAT-T включен по-умолчанию почти во всех операционных системах (iOS, Android, Linux), кроме Windows.

Если VPN сервер L2TP/IPsec находится за NAT, то для корректного подключения внешних клиентов через NAT необходимо на стороне Windows сервера и клиента внести изменение в реестр, разрешающее UDP инкапсуляцию пакетов для L2TP и поддержку (NAT-T) для IPsec.

  1. Откройте редактор реестра regedit.exe и перейдите в ветку:
    • Для Windows 10,8.1,7 и Windows Server 2016,2012R2,2008R2 — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent
    • Для Windows XP/Windows Server 2003 — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPSec
  2. Создайте DWORD параметр с именем AssumeUDPEncapsulationContextOnSendRule и значением 2;

  • 0 – (значение по-умолчанию), предполагается, что VPN сервер подключен к интернету без NAT;
  • 1 – VPN сервер находится за NAT;
  • 2 — и VPN сервер и клиент находятся за NAT.

Set-ItemProperty -Path «HKLM:SYSTEM\CurrentControlSet\Services\PolicyAgent» -Name «AssumeUDPEncapsulationContextOnSendRule» -Type DWORD -Value 2 –Force;

После включения поддержки NAT-T, вы сможете успешно подключаться к VPN серверу с клиента через NAT (в том числе двойной NAT).

L2TP VPN не работает на некоторых Windows компьютерах в локальной сети

Есть еще один интересный баг. Если в вашей локальной сети несколько Windows компьютеров, вы не сможете установить более одного одновременного подключения к внешнему L2TP/IPSec VPN серверу. Если при наличии активного VPN туннеля с одного клиента, вы попытаетесь подключиться к тому же самому VPN серверу с другого компьютера, появится ошибка с кодом 809 или 789:

По информации на TechNet проблема связана с некорректной реализацией клиента L2TP/IPSec клиента в Windows (не исправляется уже много лет).

Для исправления этого бага нужно изменить два параметра реестра в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters и перезагрузите компьютре:

  • AllowL2TPWeakCrypto – изменить на 00000001 (ослабляет уровень шифрования, для L2TP/IPSec используются алгоритмы MD5 и DES)
  • ProhibitIPSec – изменить на 00000000 (включает шифрование IPsec, которое часто отключается некоторыми VPN клиентами или утилитами)


Для изменения этих параметров реестра достаточно выполнить команды:
reg add «HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters» /v AllowL2TPWeakCrypto /t REG_DWORD /d 1 /f
reg add «HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters» /v ProhibitIpSec /t REG_DWORD /d 0 /f

Это включает поддержку нескольких одновременных L2TP/IPSec-подключений в Windows через общий внешний IP адрес (работает на всех версиях, начиная с Windows XP и заканчивая Windows 10).

Устранение неполадок с подключением виртуальных частных сетевых клиентов Microsoft L2TP/IPSec

В этой статье описывается устранение неполадок с подключением виртуальной частной сети (VPN) L2TP/IPSec.

Оригинальная версия продукта: Windows 10 — все выпуски
Исходный номер КБ: 325034

Аннотация

Прежде чем сделать VPN-подключение L2TP/IPSec, необходимо иметь подключение к Интернету. Если вы попробуете сделать VPN-подключение перед подключением к Интернету, у вас может возникнуть длинная задержка, обычно 60 секунд, а затем вы можете получить сообщение об ошибке, в результате чего не было ответа или что-то не так с модемом или другим устройством связи.

При устранении неполадок подключения L2TP/IPSec полезно понять, как происходит подключение L2TP/IPSec. При запуске подключения на сервер отправляется начальный пакет L2TP с запросом подключения. Этот пакет заставляет уровень IPSec на компьютере договариваться с VPN-сервером о том, чтобы настроить защищенный сеанс IPSec (ассоциация безопасности). В зависимости от многих факторов, включая скорость ссылок, переговоры по IPSec могут занять от нескольких секунд до двух минут. Когда создана ассоциация безопасности IPSec (SA), начинается сеанс L2TP. Когда она начинается, вы получаете запрос на имя и пароль (если подключение не настроено для автоматического подключения в Windows Millennium Edition.) Если VPN-сервер принимает ваше имя и пароль, настройка сеанса завершается.

Распространенный сбой конфигурации в соединении L2TP/IPSec — это неправильно сконфигурованный или отсутствующий сертификат или неправильно сконфигурованный или отсутствующий предустанавленный ключ. Если на уровне IPSec не удастся установить зашифрованный сеанс с VPN-сервером, он будет работать безмолвно. В результате уровень L2TP не видит ответа на запрос подключения. Задержка будет долгой, обычно 60 секунд, и тогда вы можете получить сообщение об ошибке, в результате чего на сервере не было ответа или не было ответа от модема или устройства связи. Если вы получили это сообщение об ошибке перед получением запроса на имя и пароль, IPSec не устанавливал сеанс. Если это произойдет, проверьте конфигурацию сертификата или предварительно предварительного ключа или отправьте журнал isakmp администратору сети.

Вторая распространенная проблема, которая препятствует успешному сеансу IPSec, — это использование сетевого перевода адресов (NAT). Во многих небольших сетях маршрутизатор с функциональными возможностями NAT используется для обмена одним интернет-адресом между всеми компьютерами в сети. Оригинальная версия IPSec сбрасывает подключение, которое проходит через NAT, так как обнаруживает адресное сопоставление NAT как подделывания пакетов. Домашние сети часто используют NAT. Это блокирует использование L2TP/IPSec, если клиент и шлюз VPN не поддерживают возникающий стандарт IPSec NAT-Traversal (NAT-T). Дополнительные сведения см. в разделе «Nat Traversal».

Если подключение сбой после получения запроса на имя и пароль, сеанс IPSec был создан, и, вероятно, что-то не так с вашим именем и паролем. Другие параметры сервера также могут препятствовать успешному подключению L2TP. В этом случае отправьте журнал PPP администратору.

NAT Traversal

При поддержке IPSec NAT-T в VPN-клиенте Microsoft L2TP/IPSec сеансы IPSec могут проходить через NAT, когда VPN-сервер также поддерживает IPSec NAT-T. IPSec NAT-T поддерживается Windows Server 2003. IPSec NAT-T также поддерживается Windows 2000 Server с обновлением L2TP/IPSec NAT-T для Windows XP и Windows 2000.

Для сторонних VPN-серверов и шлюзов обратитесь к администратору или поставщику шлюзов VPN, чтобы убедиться, что IPSec NAT-T поддерживается.

Дополнительные сведения

Кроме того, в утилите конфигурации предусмотрена проверка, которая включает ведение журнала IPSec. Если вы не можете подключиться, и администратор сети или сотрудники службы поддержки обратились к вам с просьбой предоставить им журнал подключения, вы можете включить ведение журнала IPSec здесь. При этом журнал (Isakmp.log) создается в C:\Program Files\Microsoft IPSec VPN папке. При создании подключения также включить ведение журнала для обработки PPP в L2TP. Для этого:

  1. Щелкните правой кнопкой мыши папку сети dialup и нажмите кнопку Свойства.
  2. Щелкните вкладку Networking, а затем выберите запись файла журнала для этого окна подключения.

Файл журнала PPP C:\Windows\Ppplog.txt является . Он расположен в C:\Program Files\Microsoft IPSec VPN папке.

Дополнительные сведения см. в дополнительных сведениях о параметрах шифрования по умолчанию для виртуального частного сетевого клиента Microsoft L2TP/IPSec.

Исправляем проблемы с VPN подключением в Windows 10 1903

В Windows 10 1903 обнаружил несколько странных багов с настроенными VPN подключениями. Первая проблема: при попытке подключиться к удаленному VPN L2TP серверу окно с VPN-подключением замирает в состоянии “connecting”. При этом не появляется даже запрос логина и пароля, а подключение через какое-то время разрывается без сообщения об ошибке.

Не появляется запрос пароля для L2TP VPN подключения

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

Есть обходное решение этой проблемы. Попробуйте использовать для установления VPN подключения старую-добрую Windows утилиту rasphone.exe, которая все еще присутствует в современных версиях Windows 10 (эта утилита должна быть знакома всем тем, кто пользовался dial-up подключением в Windows).

  1. Запустите утилиту: Win+R -> C:\Windows\System32\rasphone.exe
  2. Выберите ваше VPN подключение и нажмите кнопку “Подключить”;
  3. После этого появится стандартное окно с указанием имени пользователя и пароля для VPN подключения;
  4. VPN туннель должен успешно подняться.

Для удобства пользователей вы можете вынести ярлык на rasphone.exe на рабочий стол. Для автоматического подключения вы можете указать в настройках ярлыка имя вашего VPN подключения так: C:\WINDOWS\system32\rasphone.exe -d «VPN Name» (название VPN подключения можно взять из Control Panel -> Network Adapters и взять его в кавычки, если оно содержит пробелы в имени).

Что интересно, проблема возникает только c L2TP подключением (даже при включенном настроенном параметре реестра AssumeUDPEncapsulationContextOnSendRule = 2). Другое VPN подключение на этом же компьютере, но с протоколом PPTP и типом аутентификации MS-CHAP v2 работает нормально

Ошибка RASMAN для Always on VPN

Другая проблема возникает с VPN подключением к корпоративной сети в режиме Always on VPN (AOVPN). При инициализации такого VPN подключения служба RASMAN (Remote Access Connections Manager) останавливается, а в журнале событий Application появляется событие с Event ID 1000 и текстом:

Эта проблема признана Microsoft и по последним данным исправлена в октябрьском обновлении для Windows 10 1903 — KB4522355 (https://support.microsoft.com/en-us/help/4522355/windows-10-update-kb4522355). Вы можете скачать и установить данное обновление вручную или через Windows Update/WSUS.

Если обновление не исправило проблему, попробуйте переустановите виртуальные адаптеры WAN miniports в диспетчере устройств.

  1. Запустите Device manager (devmgmt.msc);
  2. Разверните секцию Network Adapters
  3. Последовательно щелкните правой кнопкой по следующим адаптерам и удалите их (Uninstall device): WAN Miniport (IP), WAN Miniport(IPv6) и WAN Miniport (PPTP).
  4. После удаления выберите в меню Action -> Scan for Hardware changes и дождитесь, пока Windows не обнаружит и не установит драйвера для этих виртуальных устройств;
  5. После этого сбросьте сетевые настройки Windows 10 : Settings -> Network & Internet -> Network Reset ->Reset now;
  6. Теперь вам нужно пересоздать ваши VPN подключения (Руководство по VPN для начинающих) и проверить подключение.

Изначально проблема с режимом Always on VPN подключением была связана с тем, что пользователь отключил на компьютере телеметрию (эх, Microsoft). Для корректной работы Always on VPN подключения вам придется временного включить телеметрию на компьютере. Для включения телеметрии вы можете воспользоваться одним из способов, описанных ниже.

Способ 1. Откройте редактор локальных политики (gpedit.msc) и перейдте в секцию Computer Configuration -> Administrative Templates –> Windows Components -> Data Collection and Preview Builds.

Найдите и включите политику Allow Telemetry = Enabled. Установите один из следующих режимов: 1 (Basic), 2 (Enhanced) или 3 (Full).

Способ 2. Того же самого эффекта можно добиться, вручную изменив параметр реестра AllowTelemetry (тип REG_DWORD) в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection. Здесь также нужно установить одно из трех значение: 1, 2 или 3.

Вы можете изменить этот параметр с помощью редактора реестра (regedit.exe) или с помощью PowerShell-командлета New-ItemProperty:

New-ItemProperty -Path ‘HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection\’ -Name AllowTelemetry -PropertyType DWORD -Value 1 –Force

После этого нужно перезапустить службу Remote Access Connection Manager (RasMan) через консоль services.msc или с помощью командлета Restart-Service:

Restart-Service RasMan -PassThru

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

Также в Windows 10 был другой баг, когда после отключения от VPN переставал работать доступ в Интернет. Проблема решалась созданием маршрута по-умолчанию или отключением/включением виртуального адаптера WAN Miniport (IP).

Читайте также:  Windows event log description
Оцените статью