Настройка и тесты VPN L2TP OpenWRT

9 ноября 2021

Настройка VPN туннеля на операционной системе OpenWRT на процессоре MediaTek 7628AN и замер пропускной способности L2TP/L2TP IPsec туннелий. Рассмотрим два варианта подключение.

Подключение по VPN L2TP туннелю с доступом в локальную сеть за туннелем с шифрованием IPcec и без.


Настройку и тест Будим производить на роутере Kroks KNdRt31R27 MediaTek MT7628AN 580 МГц OpenWRT 19.07.8-210814.
Тесты будут проводиться программами MikroTik BandTest, SpeedTest, с замерами загрузки процессора программой htop в консоли.

Нам понадобиться Putty для доступа к консоли. все настройки будим проводить через терминал.

          

Установим пакет   htop - программа для отображение через консоль загрузки CPU и процессов
                                 mc - программа GNU Midnight Commander файловый менеджер

opkg update && opkg install htop && opkg install mc

Для очистки консоли можно применять сочетание клавишь Ctrl+L для удобства...


1. Подключение по VPN L2TP туннелю с доступом в локальную сеть за туннелем без шифрования.

адрес сервера (b.b.b.b) 84.42.28.194
подсеть за сервером (a.a.a.a/24) пример 192.168.30.0/24 ( /24 = 255.255.255.0) 

Пример изображен на схеме.

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

uci -q batch <<-EOF
set network.vpn="interface"
set network.vpn.proto="l2tp"
set network.vpn.ipv6="0"
set network.vpn.defaultroute="0"
set network.vpn.delegate="0"
set network.vpn.force_link="1"
set network.vpn.mtu="1400"
set network.vpn.checkup_interval="10"
set network.vpn.keepalive="20 5"
set network.vpn.server="84.42.28.194"
set network.vpn.username="l2tp-cc"
set network.vpn.password="l2tp-cc"
EOF
uci commit network

Добавляем новое подключение в зону Firewall (Межсетевой экран)
uci set firewall.@zone[1].network="$(uci get firewall.@zone[1].network) vpn"
uci commit firewall



Настраиваем маршруты для доступа к внутренней сети (a.a.a.a/24) (при необходимости , у вас свои адресса)
uci -q batch <<-EOF
add network route
set network.@route[-1].target='192.168.30.0'
set network.@route[-1].gateway='172.16.190.1'
set network.@route[-1].netmask='255.255.255.0'
set network.@route[-1].interface='vpn'
EOF
uci commit network

Перезагружаем устройство через веб интерфейс или с помощью команды:
sync && reboot

ПРОВЕРКА НАСТРОЕК поднятия туннеля до сервера

Подключаемся еще раз к роутер и наблюдаем в таблице маршрутизации "route"  как поднялся тунель l2tp-vpn




Также в вэб интерфейсе , Сеть / интерфейсы:  можно наблюдать как поднялся туннель VPN

Наблюдаем в вэб интерфесе статический маршрут который мы добавили если он требуется.

Проверка трасировки до узла за VPN тунелкм видно из схемы 192.168.30.252 и до Яндекса.



Тест Bandwidth Test TCP 40 Мбит более-мение стабильно и загрузка процессора 88%, нет есть запаса на работу Wi-Fi.




Тест Bandwidth Test TCP 10/25 Мбит более-мение стабильно и загрузка процессора 81%, нет есть запаса на работу Wi-Fi.

Тест SpeedTest Rostelecom 78 Мбит загрузка процессора 54%, есть запас на работу Wi-Fi.


Выводы:

Маршрутизатор Kroks 4G+ KNdRt31R27 c процессором MediaTek MT7628AN 580 МГц вполне справляется с бытовой работой обычных потребителей и типовых домашних задач, способный обеспечить скорость до 90 Мбит в локальной сети и по Wi-Fi в интернете.

При использовании VPN L2TP без шифрования для доступа к корпоративным сетям, локальным сетям через туннель и использовать маршрутизатор Kroks 4G+ KNdRt31R27 c процессором MediaTek MT7628AN 580 МГц по прямому назначению с Wi-Fi , максимум можно рассчитывать в реальных условиях на 20 Мбит в одну сторону или 10/10 Мбит в обе стороны на более процессора не хватит с учетом 90% загруженности.