Страница 1 из 1

Проблемы с балансировкой провайдеров Mikrotik

Добавлено: 20 янв 2019, 13:16
Nero85
Добрый день,
Подскажите пожалуйста,
Имеется следующая конфигурация:

Код: Выделить всё

/ip firewall filter
add action=accept chain=input
add action=accept chain=forward
add action=accept chain=output
/ip firewall mangle
add action=mark-routing chain=prerouting new-routing-mark=Route-Local \passthrough=yes src-address=192.168.2.0/24
add action=mark-connection chain=input in-interface=ISP1 new-connection-mark=\Con-ISP1 passthrough=yes
add action=mark-connection chain=input in-interface=ISP2 \new-connection-mark=Con-ISP2 passthrough=yes
add action=mark-routing chain=output connection-mark=Con-ISP1 \new-routing-mark=Route-ISP1 passthrough=no
add action=mark-routing chain=output connection-mark=Con-ISP2 \new-routing-mark=Route-ISP2 passthrough=no
/ip firewall nat
add action=masquerade chain=srcnat src-address=192.168.2.0/24
/ip route
add distance=1 gateway=ISP routing-mark=Route-ISP1
add distance=1 gateway=ISP2 routing-mark=Route-ISP2
add check-gateway=ping distance=1 gateway=\ISP1,ISP2, routing-mark=\Route-Local
Интернет начинает работать сразу через двух провайдеров, но сам маршрутизатор пропадает, даже не пингуется.

Re: Проблемы с балансировкой провайдеров Mikrotik

Добавлено: 20 янв 2019, 15:58
Chupaka
Добрый.

Вы первым же правилом mangle маркируете трафик из локалки меткой маршрутизации Route-Local, после чего третий маршрут отправляет этот трафик в Интернет (т.е. роутер, вместо того, чтобы ответить на пинг, отправляет этот пинг дальше) — поэтому доступа нет.

Зачем вам вообще Route-Local?

З.Ы. Если удаляете переносы строки из конфига — удаляйте и обратные слеши, а то глаза мозолит :)

Re: Проблемы с балансировкой провайдеров Mikrotik

Добавлено: 21 янв 2019, 06:43
Nero85
Добрый день, Спасибо большое за Ваш ответ, правила изменил на следующие

Код: Выделить всё

/ip firewall filter
add action=accept chain=input
add action=accept chain=forward
add action=accept chain=output
/ip firewall mangle
add action=mark-connection chain=input in-interface=ISP1 new-connection-mark=Con-ISP1 passthrough=yes
add action=mark-routing chain=output connection-mark=Con-ISP1 new-routing-mark=Route-ISP1 passthrough=no
add action=mark-connection chain=input in-interface=ISP2 new-connection-mark=Con-ISP2 passthrough=yes
add action=mark-routing chain=output connection-mark=Con-ISP2 new-routing-mark=Route-ISP2 passthrough=no
/ip firewall nat
add action=masquerade chain=srcnat src-address=192.168.2.0/24
/ip route
add distance=1 gateway=ISP routing-mark=Route-ISP1
add distance=1 gateway=ISP2 routing-mark=Route-ISP2
add check-gateway=ping distance=1 gateway=ISP1,ISP2
Шлюз пингуется, но пинг стал отвратительный, скрин прикладываю
Снимок.PNG
Может забыл что сделать?
Провайдеры использует кстати VPN подключение (мало ли имеет значение)
Так же смущает что трафик не маркируется
Снимок2.PNG

Re: Проблемы с балансировкой провайдеров Mikrotik

Добавлено: 22 янв 2019, 00:20
Chupaka
В Filter не надо добавлять просто accept-правила, по умолчанию всё и так разрешено.

У вас сейчас маркируются только входящие из Интернета к роутеру подключения — поэтому трафик из LAN под маркировку не попадает и идёт по третьему маршруту, ECMP.

ECMP-маршруты в Linux из соображений безопасности каждые несколько секунд меняют политику хэширования — в результате может поменяться канал для исходящих пакетов.

Когда канал меняется — получается ситуация, когда пакеты снатированы на адрес одного провайдера, а улететь пытаются через второго. Второй провайдер правильно делает, что такие пакеты дропает. Поэтому пинг в эти моменты пропадает.

Так что — да, вы просто забыли отмаркировать соединения для балансировки. Пример можно посмотреть в официальной документации: https://wiki.mikrotik.com/wiki/Manual:P ... _Balancing

Re: Проблемы с балансировкой провайдеров Mikrotik

Добавлено: 22 янв 2019, 07:31
Nero85
Большое спасибо! Огромное даже, сделал правила для маркировки Lan и все отлично заработало