L2TP и BGP пример настройки для сети с офисом, облаком и филиалами
1. Офис (CCR2216)
1.1. Address-list для сетей
/ip firewall address-list
add list=office-networks address=172.20.100.0/22
add list=office-networks address=172.20.104.0/24
add list=office-networks address=172.20.107.0/24
add list=cloud-networks address=172.18.10.0/24
add list=cloud-networks address=172.19.10.0/24
add list=cloud-networks address=10.253.226.0/24
add list=store-networks address=172.20.10.0/24
add list=store-networks address=172.20.11.0/24
# ... добавляем остальные пары сетей для всех магазинов
1.2. L2TP Server
/interface l2tp-server server
set enabled=yes use-ipsec=yes ipsec-secret="StrongSecret" default-profile=l2tp-profile
/ip pool add name=l2tp-office-pool ranges=10.251.0.10-10.251.0.200
/ppp profile add name=l2tp-profile local-address=10.251.0.1 remote-address=l2tp-office-pool \
use-mpls=no use-compression=no use-encryption=yes only-one=yes
# Для каждого филиала можно создать секрет:
# /ppp secret add name=filial01 password=filial01 profile=l2tp-profile service=l2tp
1.3. BGP на офисе
/routing bgp instance
set default as=65000 router-id=10.251.0.1
/routing bgp peer
add name=cloud remote-address=10.251.0.2 remote-as=65001 address-families=ip
# Для каждого филиала добавляем peer (динамически или через шаблон)
# add name=filial01 remote-address=10.251.0.10 remote-as=65101
1.4. BGP фильтры
/routing filter
add chain=from-filial action=accept prefix=172.20.10.0/24
add chain=from-filial action=accept prefix=172.20.11.0/24
add chain=from-filial action=accept prefix=172.20.12.0/24
# ... добавляем все сети магазинов
add chain=to-filial action=accept prefix=172.20.100.0/22
add chain=to-filial action=accept prefix=172.20.104.0/24
add chain=to-filial action=accept prefix=172.20.107.0/24
2. Облако (CHR)
2.1. Address-list
/ip firewall address-list
add list=cloud-networks address=172.18.10.0/24
add list=cloud-networks address=172.19.10.0/24
add list=cloud-networks address=10.253.226.0/24
add list=office-networks address=172.20.100.0/22
add list=office-networks address=172.20.104.0/24
add list=office-networks address=172.20.107.0/24
add list=store-networks address=172.20.10.0/24
add list=store-networks address=172.20.11.0/24
# ... и так далее
2.2. L2TP Server
/interface l2tp-server server
set enabled=yes use-ipsec=yes ipsec-secret="StrongSecret" default-profile=l2tp-profile
/ip pool add name=l2tp-cloud-pool ranges=10.250.0.10-10.250.0.200
/ppp profile add name=l2tp-profile local-address=10.250.0.1 remote-address=l2tp-cloud-pool \
use-mpls=no use-compression=no use-encryption=yes only-one=yes
2.3. BGP на облаке
/routing bgp instance
set default as=65001 router-id=10.250.0.1
/routing bgp peer
add name=office remote-address=10.250.0.2 remote-as=65000 address-families=ip
2.4. BGP фильтры
/routing filter
# Принимаем только LAN из филиалов (камеры не нужны)
add chain=from-filial action=accept prefix=172.20.10.0/24
add chain=from-filial action=accept prefix=172.20.11.0/24
# Отправляем только сети облака
add chain=to-filial action=accept prefix=172.18.10.0/24
add chain=to-filial action=accept prefix=172.19.10.0/24
add chain=to-filial action=accept prefix=10.253.226.0/24
3. Филиал (hAP ac²)
3.1. Address-list
/ip firewall address-list
add list=store-networks address=172.20.10.0/24
add list=store-networks address=172.20.11.0/24
3.2. L2TP Clients
/interface l2tp-client
add name=to-office connect-to=vpn.office.domain user=filial01 password=filial01 \
use-ipsec=yes ipsec-secret="StrongSecret" add-default-route=no
/interface l2tp-client
add name=to-cloud connect-to=vpn.cloud.domain user=filial01 password=filial01 \
use-ipsec=yes ipsec-secret="StrongSecret" add-default-route=no
3.3. BGP на филиале
/routing bgp instance
set default as=65101 router-id=172.20.10.1
/routing bgp peer
add name=office remote-address=10.251.0.1 remote-as=65000 address-families=ip
add name=cloud remote-address=10.250.0.1 remote-as=65001 address-families=ip
3.4. BGP фильтры
/routing filter
add chain=to-office action=accept prefix=172.20.10.0/24
add chain=to-office action=accept prefix=172.20.11.0/24
add chain=to-cloud action=accept prefix=172.20.10.0/24
add chain=to-cloud action=accept prefix=172.20.11.0/24
# Приоритеты: для офисных сетей приоритет=200, для облака=100
add chain=from-office action=accept set-local-pref=200 prefix=172.20.100.0/22
add chain=from-cloud action=accept set-local-pref=100 prefix=172.18.10.0/24
4. Логика маршрутизации
- Камеры (
172.20.x.0/24подсети камер) анонсируются только через офис. - LAN (
172.20.y.0/24) анонсируется в оба узла, но маршруты из офиса имеют Local Pref = 200 (основные), а из облака — 100 (резервные). - При падении туннеля до офиса BGP-пир с офисом падает, и трафик LAN автоматически идёт через облако.
- Фильтрация между филиалами обеспечивается через то, что маршруты с других магазинов не передаются обратно.