Windows — не подключается L2TP: ошибка 789

При попытке подключиться с Windows к VPN серверу посредством L2TP без использования протокола IpSec, в большинстве случаев соединение не устанавливается. При этом отображается ошибка:
Ошибка 789 — «Попытка L2TP-подключения не удалась из-за ошибки, произошедшей на уровне безопасности во время согласований с удаленным компьютером».
А в журнале регистрируется событие:
… пользователь установил удаленное подключение которое завершилось сбоем возвращен код ошибки 789

Причина ошибки кроется в проверке подлинности на основе предварительного ключа для подключений L2TP/IPSec, ввиду того, что по-умолчанию Windows не хочет создавать подключения по L2TP без IpSec. То есть Windows позволяет создавать L2TP тоннель только в зашифрованном соединении, даже несмотря на используемую опцию Шифрование данныхНеобязательное в настройках подключения.
В большинстве случаев, проблема решается добавлением в реестр системы ключа ProhibitIpSec со значением 1. Для этого, в строку поиска на панели задач вбиваем cmd → нажимаем ПКМ на результате поиска и выбираем Запустить от имени администратора → в открывшееся окно копируем команду:

reg add «HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters» /v ProhibitIpSec /t REG_DWORD /d 1 /f

и нажимаем Enter.
Также, для ослабления уровня шифрования L2TP, в реестр можно добавить ключ AllowL2TPWeakCrypto со значением 1. Для этого в окно командной строки необходимо скопировать:

reg add «HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters» /v AllowL2TPWeakCrypto /t REG_DWORD /d 1 /f

и нажимать Enter.
После чего необходимо перезагрузить компьютер.
http://superuserdo.info/?p=720

Автоматическое подключение VPN для доступа в удалённые ЛВС

Имеется VPN подключение к удалённой ЛВС поверх Интернет подключения. За удалённой сетью находятся другие ЛВС, к которым также необходимо иметь доступ по имеющемуся VPN соединению. Помимо этого требуется настроить автоматическое подключение VPN при запуске операционной системы.

Заходим в Пуск и в строку поиска вписываем taskschd.msc, после чего запускаем taskschd. Или же идём в Пуск → Все программы → Стандартные → Служебные → Планировщик задач.
В меню выбираем пункт Действия → Создать задачу.
На вкладке Общие вводим в поле ИмяVPN.
Переходим на вкладку Триггеры. Нажимаем на кнопку Создать. В выпадающем списке Начать задачу выбираем значение При входе в систему и нажимаем ОК.
Переходим на вкладку Действия и нажимаем кнопку Создать. В выпадающем списке Действие ставим значение Запуск программы. Вводим в поле Программа или сценарий команду:

rasdial «название VPN подключения» логин пароль

Полный путь до программы rasdial C:\Windows\System32\rasdial.exe
Нажимаем кнопку ОК.
Переходим на вкладку Параметры и ставим галочки напротив:

    Немедленно запускать задачу, если пропущен плановый запуск
    При сбое выполнения перезапускать через: 1 мин.
    Количество попыток перезапуска: 99.

Снимаем галочку Останавливать задачу выполняемую дольше.

Выполняем перезагрузку и убеждаемся, что подключение происходит нормально. Заходим в Пуск → Панель управления → Центр управления сетями и общим доступом → Изменение параметров адаптера, выделяем VPN подключение и нажимаем ПКМ, затем выбираем пункт Состояние. В открывшемся окне нажимаем Сведения, в новом окне смотрим IP адрес шлюза по умолчанию (если шлюз по умолчанию не указан, то в качестве адреса шлюза, при настройке статических маршрутов, описанной ниже, следует использовать адрес сети, к которой относится IP адрес, полученный при подключении к VPN сети).

Заходим в Пуск и в строку поиска вписываем cmd, после чего запускаем консоль. Или же идём в Пуск → Все программы → Стандартные → Командная строка.
Пишем команду route print. В списке интерфейсов смотрим номер интерфейса VPN. Теперь добавим все удалённые ЛВС, к которым мы не получаем доступ напрямую при подключении VPN. Для каждой ЛВС пишем команду:

route add IP_адрес_удалённой_сети mask маска_удалённой_сети IP_адрес_шлюза_VPN if номер_интерфейса -p

Если хотим использовать Интернет по VPN, то необходимо иметь ещё один маршрут, с метрикой меньше, чем установлена у шлюза Интернет для адреса 0.0.0.0 в таблице активных маршрутов (таблица отображается по команде route print). Это можно настроить в настройках подключения (Пуск → Панель управления → Центр управления сетями и общим доступом → Изменение параметров адаптера, выделяем VPN подключение и нажимаем ПКМ → Свойства → закладка Сеть → выделяем Протокол Интернета TCP/IP и нажимаем кнопку Свойства → в открывшемся окне нажимаем кнопку Дополнительно → устанавливаем галочку Использовать основной шлюз в удалённой сети) или в командной строке, выполнив команду:

route add 0.0.0.0 0.0.0.0 IP_адрес_шлюза_VPN metric метрика if номер_интерфейса -p

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

route change 0.0.0.0 mask 0.0.0.0 IP_адрес_шлюза_VPN metric метрика -p

указав значение метрики больше, чем у маршрута через локальный шлюз.