Балансировка каналов

При использовании более 1 провайдера, возникает желание задействовать оба канала путем выхода хостов с разных операторов.

Подготовка 2WAN

Из этой настройки будем оперировать routing-mark и table

/ip route
add comment=WAN1_!_Recursive distance=1 gateway=77.88.8.1 routing-mark=WAN1
add comment=WAN2_!_Recursive distance=1 gateway=77.88.8.2 routing-mark=WAN2

/ip route rule
add action=lookup-only-in-table comment=Route_Only_WAN1 src-address=1.1.1.2/32 table=WAN1
add action=lookup-only-in-table dst-address=8.8.8.8/32 table=WAN1
add routing-mark=WAN1 table=WAN1
add action=lookup-only-in-table comment=Route_Only_WAN2 src-address=2.2.2.2/32 table=WAN2
add action=lookup-only-in-table dst-address=8.8.4.4/32 table=WAN2
add routing-mark=WAN2 table=WAN2

Маркировка соединений

Будем использовать метод балансировки через маркировку соединений в Mangle по адрес-листам и маркировку маршрута соединению.

Создаем адрес-листы local

local сети
/ip firewall address-list
add address=10.0.0.0/8 list=local
add address=192.168.0.0/16 list=local
add address=172.16.0.0/12 list=local

Маркируем соединения для WAN1

Ловим новые соединения
Ловим новые соединения
Относительно Src Address лист кроме листа адресов local
Относительно Src Address лист кроме листа адресов local
Назначаем метку соединения
Назначаем метку соединения
Выборка трафика по метке соединения
Выборка трафика по метке соединения
Маркировка Routing Mark
Маркировка Routing Mark

Маркируем соединения для WAN2 аналогично WAN1

/ip firewall mangle
add action=mark-connection chain=prerouting comment=RouteWAN1 connection-mark=!To_WAN2_Conn connection-state=new dst-address-list=!local new-connection-mark=To_WAN1_Conn passthrough=yes src-address-list=To_WAN1
add action=mark-routing chain=prerouting connection-mark=To_WAN1_Conn new-routing-mark=WAN1 passthrough=yes
add action=mark-connection chain=prerouting comment=RouteWAN2 connection-mark=!To_WAN1_Conn connection-state=new dst-address-list=!local new-connection-mark=To_WAN2_Conn passthrough=yes src-address-list=To_WAN2
add action=mark-routing chain=prerouting connection-mark=To_WAN2_Conn new-routing-mark=WAN2 passthrough=yes
Address List в DHCP Lease
Указываем Address List в DHCP Lease или добавляем вручную