Jump to content
Калькуляторы

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

3 часа назад, RN3DCX сказал:

Давно у OSPF'а появился такой функционал?

Всегда был. Настраиваете BFD, настраиваете шейпер со скоростью канала. Как шейпер начинает дропать пакеты, дропаются и пакеты OSPF, роутеры выводят канал из работы. Тут же все данные бегут на другой канал, этот освобождается и снова включается в работу. И так много раз в секунду.

Share this post


Link to post
Share on other sites

Предложенный вариант - это из разряда вредных советов.

Share this post


Link to post
Share on other sites
В 24.03.2020 в 21:30, Saab95 сказал:
В 24.03.2020 в 21:01, RN3DCX сказал:

connection-state=new - нет смысла пытаться маркировать соединения, которые уже установлены, как вы помните new - это пакет, который создал соединение, т.е он только один, а в случае со всеми пакетами routeros будет каждый раз пытаться маркировать соединение, которое уже и так может иметь маркировку.

А если у вас UDP трафик? На нем нет понятия соединения=)

 

NAT обрабатывает только: tcp, udp, icmp и некоторых мультипротоколов из [IP]->[Firewall]->[Service Port]. Обрабатывается только первый (connection-state=new) пакет в соединении, оставшиеся обрабатываются автоматически без участия таблицы NAT. Это можно отследить по изменению счетчиков в правилах.

 

@Saab95 , иной раз думаю, что специально людей вводите в заблуждение https://habr.com/ru/post/435070/

Share this post


Link to post
Share on other sites

@RN3DCX  Я не так долго(еще не динозавр) работаю сетевыми технологиями, но вроде давно был

 

https://wiki.mikrotik.com/wiki/Load_Balancing#ECMP_.28Equal_Cost_Multi-Path.29

 

@NiTr0  В статике два дефолта работать будут если мы разбираем ecmp(сам не пробовал), но это маршрутизация, а у ТС еще нат и скорее всего придется использовать маскарад. 

 

На Juniper MX80 я представляю примерно как это можно реализовать, но на микротике что бы все работало и ты про него забыл по мне либо это 3 устройства, либо PBR + NAT(ну как PBR маркировка ну это уже не PBR.) 

 

 

mik.jpg

Share this post


Link to post
Share on other sites
22 часа назад, Saab95 сказал:

Как шейпер начинает дропать пакеты, дропаются и пакеты OSPF, роутеры выводят канал из работы. Тут же все данные бегут на другой канал, этот освобождается и снова включается в работу. И так много раз в секунду

Антон, я это сохраню. Такие перлы попадаются крайне редко, чтоб поперхнуться.

Share this post


Link to post
Share on other sites
15 часов назад, pingz сказал:

В статике два дефолта работать будут если мы разбираем ecmp(сам не пробовал), но это маршрутизация, а у ТС еще нат и скорее всего придется использовать маскарад. 

так а какая разница, будет маскарад или нет? вешается маскарад на интерфейс, и делов-то. куда трафик побежал - в тот ип и занатился. пофиг же, что pbr что ecmp.

 

хуже если трафик бегает по раунд-робин, а не по сессиям/хостам. но тут - хоть один некротик, хоть 10, а легче не станет, чужой фрагмент tcp пакета например не отнатится, да и пакет с уже установленной сессии тоже...

Share this post


Link to post
Share on other sites

@NiTr0 @NiTr0вы с микротиком работали?

 

Нат там реализован как фаерврл правила отрабатываются по очереди, сперва идёт первое правило, потом второе. Будет всегда работать первое.

Share this post


Link to post
Share on other sites

ну есть правило MASQUERADE, натящее пакеты в ип интерфейса (или 2 правила DNAT с указанием интерфейса), почему они не будут работать с ECMP?

Share this post


Link to post
Share on other sites

@NiTr0  настраивай скрины в студию.

Маскарад нужен для, того чтобы все виды трафика проходили нормально.

Share this post


Link to post
Share on other sites
4 часа назад, pingz сказал:

настраивай скрины в студию.

мне лень ради этого лепить тестовый стенд. лет 15 назад на линуксе поднимал (static ECMP через скриптовые костыли, и masquerade на интерфейсы). если некротиковцы не изуродовали кривыми лапками ядро - все будет работать.

 

4 часа назад, pingz сказал:

Маскарад нужен для, того чтобы все виды трафика проходили нормально.

бред же... маскарад - это dnat с автоматическим определением ип адреса интерфейса.

 

и, повторюсь, в чем принципиальная разница между PBR с двумя аплинками с маскарадом, и ECMP?

Share this post


Link to post
Share on other sites
11 часов назад, pingz сказал:

@NiTr0  настраивай скрины в студию.

Маскарад нужен для, того чтобы все виды трафика проходили нормально.

Маскарад нужен чтобы не знать src ip, который вычисляется каждый пакет подпадающий под правило. В этом всё отличие от snat.

 

6 часов назад, NiTr0 сказал:

бред же... маскарад - это dnat с автоматическим определением ип адреса интерфейса.

snat же

 

6 часов назад, NiTr0 сказал:

(static ECMP через скриптовые костыли, и masquerade на интерфейсы).

да, на обычных линухах работало

Share this post


Link to post
Share on other sites
4 часа назад, pppoetest сказал:

snat же

таки да, попутал их что-то, source ip же меняется...

Share this post


Link to post
Share on other sites

@NiTr0 уважаемый посмотрите как называется раздел в котором размещена тема.

 

Микротик хоть и собран на линуксе, но это уже не Линукс тут свои припоны. 

 

Пробовал я собирать через srcnat клиенты жалуются производительность коробки становится хуже. 

 

Микротик как коробка на р-н(300-600 клиентов) очень да же норм, за свои деньги, за 8 лет вышел из строя только один сгорел БП.

 

З.ы. я не топлю, что микротик огонь коробка, т.к. на сети есть мх. Но на старте микротик в полне хорошее решение со своими ограничениями.

Share this post


Link to post
Share on other sites
3 часа назад, pingz сказал:

Микротик хоть и собран на линуксе, но это уже не Линукс тут свои припоны. 

изуродованный кривыми лапками латышских индусов линукс, да.

потому и пишу - не работать оно может только в одном случае: рукожопы из некротика сделали ECMP по принципу round-robin, а не per-connection. и к маскараду/srcnat оно не имеет никакого отношения - пушо маршрутизация и NAT соединений это таки две разные сущности.

 

3 часа назад, pingz сказал:

Микротик как коробка на р-н(300-600 клиентов) очень да же норм

а, "л3 сеть"... знаем, плавали, строили лет 15 назад, когда управляемые свичи и оптика стоили космических денег.

Share this post


Link to post
Share on other sites

@NiTr0 @NiTr0 у меня другая ситуация на доступе рррое р-ны находятся за 1.5-2к км от серверной прохожу mpls и dwdm других операторов l2 не вариант. Все что дальше 150 км стараюсь собирать на l3 более предсказуемо, но в самом р-не l2.

 

По поводу маскарада, если ставить srcnat начинают жаловаться люди с игрушками и тунелями. Два правила можно собрать, но будет работать только первое, поэтому нужно маркировать трафик на входе и отправлять в разные наты соответственно переключения не будет т.к. статика.

 

З.ы. в данный момент в р-нах у меня ospf приходит 2 порта от оператора, который даёт транзит в каждом отдельный влан поднят ospf и через ecmp сделана балансировка + резервирование уже 3 года полет нормальный. Но в центре стоит mx80 с карточкой, лучше было бы поставить скат, но в то время руководство посчитало, что он не надёжный.

Share this post


Link to post
Share on other sites
21 час назад, pingz сказал:

По поводу маскарада, если ставить srcnat начинают жаловаться люди с игрушками и тунелями.

сфигали?

21 час назад, pingz сказал:

Два правила можно собрать, но будет работать только первое, поэтому нужно маркировать трафик на входе и отправлять в разные наты

нафига, если в srcnat есть матчинг по dst interface?

Share this post


Link to post
Share on other sites

@NiTr0  конфиг в студию

 

У вас точно есть микротик?

 

1    chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether3 log=no log-prefix="" 

2    chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether4 log=no log-prefix="" 

 

 

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

 

1    chain=srcnat action=masquerade src-address=192.168.0.0/25 out-interface=ether3 log=no log-prefix="" 

2    chain=srcnat action=masquerade src-address=192.168.0.128/25 out-interface=ether4 log=no log-prefix="" 

 

Вот так будет работать, но это же не балансировка и нужна маркировка. 

 

 chain=srcnat action=add-src-to-address-list src-address=192.168.0.0/24 address-list=pool address-list-timeout=none-dynamic log=no log-prefix="" 
 

Можно сделать вот так, но на сколько мне известно это работает если у вас 1 дефолт и несколько внешних ip адресов на интерфейсе wan. 

 

ecmp будет работать если в схеме будет 3 устройства об этом писал саб 

 

ТС писал про балансировку, в моем понимании балансировка это либо lag либо ecmp, все остальное это разделение канала. 

Share this post


Link to post
Share on other sites
В 01.04.2020 в 19:09, pingz сказал:

1    chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether3 log=no log-prefix="" 

2    chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether4 log=no log-prefix="" 

 

 

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

бред же пишете. с какой радости пакеты, идущие через ether4, будут обрабатываться правилом chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=ether3 log=no log-prefix="" ?

ну и да, даже если не укаывать out-interface в правилах, оставив одно правило - маскарад, внезапно, тоже будет рабоать :)

 

просто потому, что эти правила ни разу не указывают в какие порты слать пакеты. и это вообще не работа файрвола :)

 

В 01.04.2020 в 19:09, pingz сказал:

 chain=srcnat action=add-src-to-address-list src-address=192.168.0.0/24 address-list=pool address-list-timeout=none-dynamic log=no log-prefix="" 
 

Можно сделать вот так, но на сколько мне известно это работает если у вас 1 дефолт и несколько внешних ip адресов на интерфейсе wan. 

ну и нахрена вы ip адрес в адреслист добавлять-то пытаетесь, причем - перманентно? что вы этим добиться хотите? :)

Share this post


Link to post
Share on other sites

@NiTr0 рабочий конфиг в студию. Я же вроде как не прав.

 

З.ы. свободный стенд есть время много запилю на тест.

Share this post


Link to post
Share on other sites

ок, как будет время - попробую слепить какой-то стенд...

Share this post


Link to post
Share on other sites

@NiTr0  зачем стенд? Просто кидай правило Ната + правило маршрутизации я их опробую, это же по твоим словам 2-3 строчки. 

Два маршрута + 1 правило Ната, ip адреса я напишу на интерфейсах. 

Share this post


Link to post
Share on other sites

дык один static ECMP маршрут на два шлюза, и одно правило маскарада без out-interface (по src ip). ну или два правила маскарада, по одному на каждый интерфейс.

Share this post


Link to post
Share on other sites

@NiTr0 в чем проблема написать эти строчки? 

У вас точно есть микротик? 

 

Share this post


Link to post
Share on other sites

проблема в том что на продакшне экспериментировать "чтобы написать эти строчки" не хочется, а стенд надо слепить, хотя бы в виртуалке.

Share this post


Link to post
Share on other sites

В разных статьях при использовании NAT'а кто-то указывает in-interface=LAN, а кто-то in-interface=WAN.

Вопрос, так, что же правильнее?

 

/ip firewall mangle

add action=mark-connection chain=prerouting in-interface= ? (WAN или LAN) new-connection-mark=con-WAN1 passthrough=no per-connection-classifier=src-address-and-port:2/0

add action=mark-connection chain=prerouting in-interface= ? (WAN или LAN) new-connection-mark=con-WAN2 passthrough=no per-connection-classifier=src-address-and-port:2/1

 

И еще вопрос, нужна ли опция in-interface-list или же можно и без неё?

add action=mark-routing chain=prerouting connection-mark=con-WAN1 in-interface-list=!lst-WAN new-routing-mark=WAN1 passthrough=no

add action=mark-routing chain=prerouting connection-mark=con-WAN2 in-interface-list=!lst-WAN new-routing-mark=WAN2 passthrough=no

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now