RouterOS firewal mangle при использовании двух провайдеров

Правильная маркировка трафика на RouterOS (работает как на 6й версии так и на 7й) при использовании нескольких провайдеров для доступа к интернет

Первым делом добавим список BOGON-сетей

/ip firewall address-list
add address=0.0.0.0/8 list=BOGON
add address=10.0.0.0/8 list=BOGON
add address=127.0.0.0/8 list=BOGON
add address=169.254.0.0/16 list=BOGON
add address=172.16.0.0/12 list=BOGON
add address=192.0.0.0/24 list=BOGON
add address=192.0.2.0/24 list=BOGON
add address=192.88.99.0/24 list=BOGON
add address=192.168.0.0/16 list=BOGON
add address=198.18.0.0/15 list=BOGON
add address=198.51.100.0/24 list=BOGON
add address=203.0.113.0/24 list=BOGON
add address=224.0.0.0/4 list=BOGON
add address=240.0.0.0/4 list=BOGON
add address=255.255.255.255 list=BOGON

Маркировка трафика через первого провайдера

/ip firewall mangle
add action=mark-connection chain=prerouting comment="marking WAN1" connection-state=new dst-address=11.111.11.111 in-interface=ether1 new-connection-mark=Prerouting/via-WAN1 passthrough=no
add action=mark-routing chain=output connection-mark=Prerouting/via-WAN1 new-routing-mark=NextHop/via-WAN1 passthrough=no
add action=mark-routing chain=output dst-address-list=!BOGON new-routing-mark=NextHop/via-WAN1 passthrough=no src-address=11.111.11.111
add action=mark-routing chain=prerouting connection-mark=Prerouting/via-WAN1 in-interface=!ether1 new-routing-mark=NextHop/via-WAN1 passthrough=no
add action=mark-routing chain=prerouting dst-address-list=!BOGON new-routing-mark=NextHop/via-WAN1 passthrough=no src-address-list=Via_WAN1

Если нужно жестко назначить определённым хостам шлюзом только первого провайдера – они добавляются в  address-list Via_WAN1

Маркировка трафика через второго провайдера

/ip firewall mangle
add action=mark-connection chain=prerouting comment=markingWAN2 connection-state=new dst-address=22.222.22.222 in-interface=combo1 new-connection-mark=Prerouting/via_WAN2 passthrough=no
add action=mark-routing chain=output connection-mark=Prerouting/via_WAN2 new-routing-mark=NextHop/via_WAN2 passthrough=no
add action=mark-routing chain=output dst-address-list=!BOGON new-routing-mark=NextHop/via_WAN2 passthrough=no src-address=22.222.22.222
add action=mark-routing chain=prerouting connection-mark=Prerouting/via_WAN2 in-interface=!combo1 new-routing-mark=NextHop/via_WAN2 passthrough=no
add action=mark-routing chain=prerouting dst-address-list=!BOGON new-routing-mark=NextHop/via_WAN2 passthrough=no src-address-list=Via_WAN2

Если нужно жестко назначить определённым хостам шлюзом только первого провайдера – они добавляются в  address-list Via_WAN2

В финале добавим маршруты и правила для маркированного трафика. Есть некоторые отличия в ROS-6 и ROS-7.

В RouterOS-6 это выглядит так

/ip route rule
add action=lookup-only-in-table routing-mark=NextHop/via-WAN1 table=NextHop/via-WAN1
add action=lookup-only-in-table routing-mark=NextHop/via-WAN2 table=NextHop/via-WAN2
/ip route
add comment="Marked via WAN1" distance=1 gateway=11.111.11.1 routing-mark=NextHop/via-WAN1
add comment="Marked via WAN2" distance=1 gateway=22.222.22.2 routing-mark=NextHop/via-WAN2

Отличия в RouterOS-7 в добавлении таблиц маршрутизации

/routing table
add fib name=NextHop/via-WAN1
add fib name=NextHop/via-WAN2
/routing rule
add action=lookup-only-in-table disabled=no routing-mark=NextHop/via-WAN1 table=NextHop/via-WAN1
add action=lookup-only-in-table disabled=no routing-mark=NextHop/via-WAN2 table=NextHop/via-WAN2
/ip route
add comment="Marked WAN2" disabled=no distance=1 dst-address=0.0.0.0/0 gateway=11.111.11.1 routing-table=NextHop/via-WAN1
add comment="Marked WAN1" disabled=no distance=1 dst-address=0.0.0.0/0 gateway=22.222.22.2 routing-table=NextHop/via-WAN2
Яндекс.Метрика