Настройка туннеля L2TPv3 на роутере на базе irzOS
L2TPv3 – туннельный протокол, позволяющий инкапсулировать трафик канального уровня (L2) через IP-сети.
Работает по принципу точка-точка, имеет несколько режимов работы: как работу напрямую в качестве IP протокола (имеет номер 115), так и работу поверх UDP, что позволяет ему проходить через NAT.
Режим с использованием протокола IP должен использоваться при отсутствии между адресами сторон туннеля NAT, в противном случае следует использовать режим UDP.
Подобно многим другим туннельным протоколам L2TPv3 не имеет встроенной поддержки шифрования, поэтому должен использоваться либо в закрытых сетях, либо использовать дополнительное шифрование, например, с помощью IPSec.
Туннели уровня L2 поверх сетевого уровня (L3) стоит использовать только в случае крайней необходимости, когда задачу невозможно решить с помощью маршрутизации внутри L3 туннелей.
В примере оба роутера имеют внешние IP адреса, туннель будет настроен поверх них. Так же роутеры имеют локальные адреса из одной подсети, которые нужно объединить в один L2 сегмент с помощью L2TPv3 туннеля. Во избежание конфликта адресов на обоих роутерах должен быть выключен DHCP сервер для локальных сетей, которые будут объединены посредством туннеля.
Чтобы создать туннель:
-
В WEB или CLI интерфейсе зайдите в раздел /tunnel → l2tpv3.
-
Нажмите Add и дайте название создаваемому туннелю.
-
Заполните поля.
Пример настройки туннеля LvTPv3 с использованием инкапсуляции UDP, без использования IPSec
В качестве названий интерфейсов туннеля в данном примере используется L2TPv3, интерфейсы wan имеют название WAN.
Настройка роутера R1
Поле |
Значение |
Local IP |
WAN (выбирается из перечня) |
Remote IP |
200.1.1.2 |
L2 Spec |
Default (выбирается из перечня) |
Tunnel ID |
1000 (указывается пользователем) |
Peer Tunnel ID |
2000 (указывается пользователем) |
Session ID |
3000 (указывается пользователем) |
Peer Session ID |
4000 (указывается пользователем) |
Encapsulation |
UDP (выбирается из перечня) |
Peer UDP Port |
9001 (указывается пользователем) |
UDP Port |
9000 (указывается пользователем) |
Настройка роутера R1 в CLI
/tunnel l2tp-v3 add name=L2TPv3
disabled false
encap udp
encryption none
local-ip WAN
l2spec-type default
macaddr auto
mtu 1458
peer-session-id 4000
peer-tunnel-id 2000
remote-ip 200.1.1.2
session-id 3000
tunnel-id 1000
tunnel-ip -
udp-dport 9001
udp-sport 9000
apply
/
Настройка роутера R2
Поле |
Значение |
Local IP |
WAN (выбирается из перечня) |
Remote IP |
200.1.1.1 |
L2 Spec |
Default (выбирается из перечня) |
Tunnel ID |
2000 (указывается пользователем) |
Peer Tunnel ID |
1000 (указывается пользователем) |
Session ID |
4000 (указывается пользователем) |
Peer Session ID |
3000 (указывается пользователем) |
Encapsulation |
UDP (выбирается из перечня) |
Peer UDP Port |
9000 (указывается пользователем) |
UDP Port |
9001 (указывается пользователем) |
Настройка роутера R2 в CLI
/tunnel l2tp-v3 add name=L2TPv3
disabled false
encap udp
encryption none
local-ip WAN
l2spec-type default
macaddr auto
mtu 1458
peer-session-id 3000
peer-tunnel-id 1000
remote-ip 200.1.1.1
session-id 4000
tunnel-id 2000
tunnel-ip -
udp-dport 9000
udp-sport 9001
apply
/
В результате отобразится состояние туннеля в статусной зоне панели управления:
Файрволл
Перейдите в раздел /firewall → filter и настройте файрволл на прием пакетов.
Настройка для роутера R1
В качестве номера порта используйте номер порта UDP Port, указанный ранее в настройках туннеля.
Пример настройки туннеля LvTPv3 с использованием инкапсуляции UDP, c использованием IPSec
Настройка роутера R1
Поле |
Значение |
Local IP |
WAN (выбирается из перечня) |
Remote IP |
200.1.1.2 |
Encryption |
ipsec |
Pre-Shared Key |
пароль |
L2 Spec |
Default (выбирается из перечня) |
Tunnel ID |
1000 (указывается пользователем) |
Peer Tunnel ID |
2000 (указывается пользователем) |
Session ID |
3000 (указывается пользователем) |
Peer Session ID |
4000 (указывается пользователем) |
Encapsulation |
UDP (выбирается из перечня) |
Peer UDP Port |
9001 (указывается пользователем) |
UDP Port |
9000 (указывается пользователем) |
Настройка роутера R1 в CLI
/tunnel l2tp-v3 add name=L2TPv3
encap udp
encryption ipsec
local-ip bridge1
l2spec-type default
macaddr auto
mtu 1458
peer-session-id 4000
peer-tunnel-id 2000
psk password
remote-ip 200.1.1.2
session-id 3000
tunnel-id 1000
udp-dport 9001
udp-sport 9000
/tunnel l2tp-v3 apply
Настройка роутера R2
Поле |
Значение |
Local IP |
WAN (выбирается из перечня) |
Remote IP |
200.1.1.1 |
Encryption |
ipsec |
Pre-Shared Key |
пароль |
L2 Spec |
Default (выбирается из перечня) |
Tunnel ID |
2000 (указывается пользователем) |
Peer Tunnel ID |
1000 (указывается пользователем) |
Session ID |
4000 (указывается пользователем) |
Peer Session ID |
3000 (указывается пользователем) |
Encapsulation |
UDP (выбирается из перечня) |
Peer UDP Port |
9000 (указывается пользователем) |
UDP Port |
9001 (указывается пользователем) |
Настройка роутера R2 в CLI
/tunnel l2tp-v3 add name=L2TPv3
encap udp
encryption ipsec
local-ip bridge1
l2spec-type default
macaddr auto
mtu 1458
peer-session-id 3000
peer-tunnel-id 1000
psk password
remote-ip 200.1.1.1
session-id 4000
tunnel-id 2000
udp-dport 9000
udp-sport 9001
/tunnel l2tp-v3 apply
| В случае настройки туннеля с шифрованием IPSec настраивать файрволл дополнительно НЕ НУЖНО. |
Связь между соединяемыми сегментами локальной сети
Туннель поднят и теперь необходимо обеспечить связь между соединяемыми сегментами локальной сети. Чтобы добиться этого, нужно добавить виртуальные интерфейсы туннеля в соответствующие локальным сетям бриджи на обоих роутерах в разделе /network → bridge.
Кликните на нужном бридже и выберите в выпадающем списке Untagged строку с названием интерфейса туннеля L2TPv3, после чего нажмите Apply.
Настройка в CLI
-
Выведите список существующих бриджей и их параметров командой:
/ip interface status -
Найдите в списке интерфейс бриджа, которому назначен нужный IP-адрес и подсеть, например, 192.168.1.1/24. В примере нужный бридж – bridge0.
-
Перейдите в раздел настройки бриджа и введите port L2TPv3. После чего введите Apply, чтобы подтвердить новые настройки бриджа.
/network bridge bridge0 port L2TPv3 apply /L2TPv3 - название интерфейса туннеля
На втором роутере настройка аналогичная.
| Туннельные интерфейсы по умолчанию не фильтруются с помощью файрволла, при необходимости фильтрация настраивается в разделе /firewall — filter! |
Проверка связности
Для проверки связности перейдите в Ping (/tools → Ping) на одном роутере и Sniffer (/tools → Sniffer) – на другом.
Обмен пакетами ICMP прошел успешно, задача выполнена.
Настройка с использованием инкапсуляции IP выполняется аналогично.
Завершите настройку командой /system config commit.