Что такое L2TP/IPsec и когда он нужен
L2TP (Layer 2 Tunneling Protocol) — один из старейших протоколов туннелирования, который сам по себе не шифрует трафик. Для обеспечения конфиденциальности его почти всегда комбинируют с IPsec, который отвечает за шифрование и аутентификацию. Такая связка называется L2TP/IPsec и до сих пор используется в корпоративных сетях, на старых маршрутизаторах и в некоторых VPN-сервисах.
В Windows 10 поддержка L2TP/IPsec встроена, поэтому для подключения не нужно устанавливать дополнительное программное обеспечение. Это удобно, когда администратор выдаёт вам только адрес сервера, логин, пароль и общий ключ (pre-shared key). Однако у протокола есть особенности: он чувствителен к NAT, требует открытых UDP-портов и иногда конфликтует с настройками безопасности Windows. Понимание этих нюансов поможет избежать типичных ошибок.
Подготовка: что нужно знать перед настройкой
Перед созданием VPN-подключения соберите все необходимые данные. Обычно это:
- IP-адрес или доменное имя сервера (например, vpn.example.com или 203.0.113.10);
- логин и пароль пользователя VPN;
- общий ключ (pre-shared key) — строка, используемая для аутентификации IPsec;
- тип аутентификации (чаще всего MS-CHAP v2).
Эти параметры предоставляет администратор сети или ваш VPN-провайдер. Если вы настраиваете подключение для себя, убедитесь, что сервер поддерживает L2TP/IPsec и у вас есть права на создание VPN-соединений в Windows. Также проверьте, что на компьютере установлена актуальная версия Windows 10 — в старых сборках могут отсутствовать некоторые исправления для L2TP.
Пошаговая настройка L2TP/IPsec в Windows 10
В Windows 10 процесс настройки максимально упрощён. Выполните следующие шаги:
- Нажмите правой кнопкой мыши на «Пуск» и выберите «Параметры» (или нажмите Win + I).
- Перейдите в раздел «Сеть и Интернет» → «VPN».
- Нажмите «Добавить VPN-подключение».
- Заполните поля:
- Поставщик услуг VPN — Windows (встроенные);
- Имя подключения — любое удобное название, например «Рабочая VPN»;
- Адрес или имя сервера — IP или домен;
- Тип VPN — выберите «L2TP/IPsec с предварительным ключом»;
- Общий ключ — введите pre-shared key;
- Тип данных для входа — «Имя пользователя и пароль»;
- Имя пользователя и Пароль — учётные данные.
- Нажмите «Сохранить».
После этого подключение появится в списке VPN-сетей. Чтобы соединиться, нажмите на значок сети в трее, выберите нужное подключение и нажмите «Подключить». Если всё настроено верно, статус изменится на «Подключено».
Дополнительные параметры безопасности и протоколы
Иногда стандартных настроек недостаточно, особенно если сервер требует определённые протоколы аутентификации или шифрования. Чтобы изменить их, откройте свойства VPN-подключения:
- Нажмите Win + R, введите
ncpa.cplи нажмите Enter. - Найдите ваш VPN-адаптер, кликните правой кнопкой мыши и выберите «Свойства».
- Перейдите на вкладку «Безопасность».
Здесь можно настроить:
- Тип VPN — убедитесь, что выбран «Протокол L2TP с IPsec (L2TP/IPsec)»;
- Шифрование данных — рекомендуется «Обязательное шифрование (отключиться, если нет шифрования)»;
- Проверка подлинности — обычно используется «Протокол проверки пароля Microsoft CHAP версии 2 (MS-CHAP v2)». В некоторых случаях требуется также включить CHAP.
Для L2TP/IPsec с предварительным ключом нажмите «Дополнительные параметры» и убедитесь, что установлен флажок «Использовать предварительный ключ для проверки подлинности» и введён правильный ключ. Неправильный ключ — одна из самых частых причин ошибок подключения.
Типичные ошибки и их коды: 789, 809, 800
При подключении к L2TP/IPsec VPN пользователи часто сталкиваются с ошибками, которые имеют конкретные коды. Вот самые распространённые:
- Ошибка 789: «Попытка L2TP-подключения не удалась из-за ошибки, произошедшей на уровне безопасности во время согласований с удалённым компьютером». Возникает при проблемах с IPsec-согласованием, неверном ключе или несовместимых алгоритмах шифрования.
- Ошибка 809: «Не удалось установить связь между компьютером и VPN-сервером». Часто связана с блокировкой портов или проблемами NAT.
- Ошибка 800: «Не удается установить соединение с VPN-сервером». Указывает на недоступность сервера или неправильные параметры подключения.
Если вы видите одно из этих сообщений, в первую очередь проверьте:
- правильность адреса сервера;
- доступность сервера (например, с помощью ping);
- открытые порты на сервере и маршрутизаторе;
- настройки брандмауэра Windows.
Подробное решение для каждой ошибки рассмотрено ниже.
Решение проблемы с NAT: настройка реестра
Одна из самых частых проблем L2TP/IPsec — невозможность подключения, когда VPN-сервер находится за NAT (например, за домашним роутером). Протокол IPsec не поддерживает NAT напрямую, поэтому используется расширение NAT-T (Network Address Translation Traversal), которое инкапсулирует IPsec-пакеты в UDP-порт 4500. В большинстве операционных систем NAT-T включён по умолчанию, но в Windows его иногда приходится активировать вручную.
Для этого нужно изменить реестр:
- Нажмите Win + R, введите
regeditи нажмите Enter. - Перейдите в ветку
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent. - Создайте параметр DWORD с именем
AssumeUDPEncapsulationContextOnSendRule. - Установите значение:
0— если сервер не за NAT (по умолчанию);1— если сервер за NAT;2— если и сервер, и клиент за NAT.
- Перезагрузите компьютер.
Если и клиент, и сервер находятся за NAT, значение 2 обычно решает проблему. Это же изменение можно сделать через PowerShell:
Set-ItemProperty -Path "HKLM:SYSTEM\CurrentControlSet\Services\PolicyAgent" -Name "AssumeUDPEncapsulationContextOnSendRule" -Type DWORD -Value 2 -ForceПосле перезагрузки попробуйте подключиться снова.
Исправление ошибки 789 и проблемы с несколькими подключениями
Ошибка 789 часто возникает из-за того, что Windows по умолчанию использует слабые алгоритмы шифрования (MD5, DES) для L2TP/IPsec, но при этом запрещает их. Чтобы разрешить, нужно изменить два параметра в реестре:
- Ветка:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters - Параметр
AllowL2TPWeakCrypto— установите значение1(разрешает слабую криптографию); - Параметр
ProhibitIPSec— установите значение0(включает IPsec).
Это можно сделать командами:
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После этого перезагрузите компьютер. Этот же метод помогает решить проблему, когда с одного IP-адреса (например, из одной локальной сети) невозможно установить более одного одновременного L2TP-подключения к внешнему серверу. Баг связан с реализацией клиента в Windows и проявляется только на Windows-устройствах — Linux, macOS и Android таких ограничений не имеют.
Проверка портов и служб, необходимых для L2TP
Для корректной работы L2TP/IPsec должны быть открыты следующие UDP-порты:
- UDP 500 — для IKE (Internet Key Exchange), обмена ключами;
- UDP 1701 — для самого L2TP;
- UDP 4500 — для NAT-T (если сервер за NAT);
- Протокол ESP (IP-протокол 50) — для шифрования данных.
Если сервер находится за маршрутизатором, необходимо настроить проброс этих портов на внутренний IP-адрес сервера. На клиентской стороне убедитесь, что брандмауэр Windows не блокирует исходящие подключения. Также проверьте, что запущены службы:
IKEEXT(IKE and AuthIP IPsec Keying Modules);PolicyAgent(IPsec Policy Agent).
Их статус можно посмотреть командой get-service IKEEXT,PolicyAgent в PowerShell. Если службы остановлены, запустите их и установите автоматический тип запуска.
Дополнительные советы: сброс адаптеров и отключение шлюза
Если ничего не помогает, попробуйте следующие методы:
- Удалите виртуальные адаптеры WAN Miniport (L2TP) и WAN Miniport (IKEv2). Откройте «Диспетчер устройств», найдите их в разделе «Сетевые адаптеры», удалите и перезагрузите компьютер. Windows восстановит их с настройками по умолчанию.
- Отключите использование шлюза в удалённой сети. Если после подключения к VPN пропадает доступ в интернет, откройте свойства VPN-подключения → вкладка «Сеть» → выберите «IP версии 4 (TCP/IPv4)» → «Свойства» → «Дополнительно» и снимите флажок «Использовать основной шлюз в удалённой сети». Это позволит ходить в интернет через локальное подключение, а не через VPN.
- Проверьте настройки PPP. На вкладке «Параметры» → «Параметры PPP» включите опцию «Включить расширение LCP» (Enable LCP Extension).
Эти шаги часто помогают устранить нестабильные подключения и конфликты маршрутизации.
Когда L2TP/IPsec — не лучший выбор: альтернативы
L2TP/IPsec — проверенная технология, но она не лишена недостатков. Из-за двойной инкапсуляции скорость ниже, чем у современных протоколов, а настройка может потребовать вмешательства в реестр. Если у вас есть выбор, рассмотрите альтернативы:
- IKEv2 — более быстрый и стабильный, хорошо работает с мобильными сетями, поддерживает автоматическое переподключение;
- WireGuard — современный протокол с высокой производительностью и простой настройкой;
- OpenVPN — гибкий и безопасный, но требует установки клиента.
Windows 10 поддерживает IKEv2 и SSTP «из коробки», поэтому для новых подключений они часто предпочтительнее. Однако если ваш сервер или корпоративная инфраструктура используют только L2TP, приведённые выше инструкции помогут настроить его без лишних проблем.
Вопросы и ответы
Почему возникает ошибка 789 при подключении L2TP VPN в Windows 10?
Ошибка 789 обычно связана с проблемами согласования IPsec. Чаще всего это происходит из-за того, что Windows запрещает слабые алгоритмы шифрования (MD5, DES), которые использует L2TP/IPsec. Решение — изменить реестр: в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters установите AllowL2TPWeakCrypto в 1 и ProhibitIPSec в 0. Также проверьте, что общий ключ введён правильно и на сервере разрешён нужный тип аутентификации (обычно MS-CHAP v2).
Как исправить ошибку 809 при подключении к L2TP VPN?
Ошибка 809 часто указывает на проблемы с NAT или блокировкой портов. Убедитесь, что на сервере открыты UDP-порты 500, 1701 и 4500, а также разрешён протокол ESP. Если сервер находится за NAT, на клиенте нужно включить поддержку NAT-T, создав в реестре параметр AssumeUDPEncapsulationContextOnSendRule со значением 2 в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent. После изменения реестра перезагрузите компьютер.
Нужно ли открывать порт 1701 TCP или UDP для L2TP?
Для L2TP используется UDP-порт 1701, а не TCP. Это распространённая ошибка — многие пытаются открыть TCP 1701, но протокол работает только через UDP. Также для IPsec необходимы UDP 500 (IKE) и UDP 4500 (NAT-T), а также протокол ESP (IP-протокол 50). Убедитесь, что все эти порты открыты на сервере и не блокируются брандмауэром.
Почему не работает L2TP VPN, если сервер за NAT?
IPsec не поддерживает NAT напрямую, поэтому используется протокол NAT-T, который инкапсулирует IPsec-пакеты в UDP-порт 4500. В Windows NAT-T может быть отключён по умолчанию. Чтобы включить его, создайте в реестре параметр AssumeUDPEncapsulationContextOnSendRule в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent и установите значение 1 (сервер за NAT) или 2 (и сервер, и клиент за NAT). После этого перезагрузите компьютер.
Как настроить L2TP VPN в Windows 10, если нет встроенного типа L2TP/IPsec?
В Windows 10 тип L2TP/IPsec доступен в настройках VPN-подключения. При создании подключения выберите «Тип VPN» → «L2TP/IPsec с предварительным ключом». Если этого пункта нет, убедитесь, что у вас установлены все обновления Windows. Также можно настроить подключение через панель управления (ncpa.cpl), создав новое подключение к рабочему месту и выбрав в свойствах тип VPN «Протокол L2TP с IPsec (L2TP/IPsec)».
Что делать, если после подключения к L2TP VPN пропадает интернет?
Это происходит, когда VPN-подключение использует основной шлюз в удалённой сети, и весь трафик направляется через VPN. Чтобы это исправить, откройте свойства VPN-подключения → вкладка «Сеть» → выберите «IP версии 4 (TCP/IPv4)» → «Свойства» → «Дополнительно» и снимите флажок «Использовать основной шлюз в удалённой сети». После этого интернет будет работать через ваше локальное подключение, а доступ к ресурсам VPN-сети сохранится.
Можно ли подключиться к L2TP VPN с нескольких Windows-компьютеров из одной сети одновременно?
Да, но есть известный баг: если несколько Windows-клиентов находятся за одним NAT и пытаются подключиться к одному L2TP-серверу, может работать только одно подключение. Это связано с некорректной реализацией L2TP/IPsec в Windows. Решение — изменить реестр: в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters установите AllowL2TPWeakCrypto в 1 и ProhibitIPSec в 0. После перезагрузки проблема обычно исчезает. На Linux, macOS и Android такого ограничения нет.