VolanD666 Опубликовано 16 августа, 2019 (изменено) · Жалоба Добрый день! Подскажите, пожалуйста, пытаюсь понять почему не работает эта схема: Есть два l2tp туннеля между двумя микротиками. На каждом микротики есть по лупбеку с адресами 1.1.1.1 и 2.2.2.2. Пытаюсь создать на микротике два правила, которые маркируют соединения: /ip firewall mangle add action=mark-routing chain=prerouting dst-address=2.2.2.2 new-routing-mark=l2tp1 random=30 src-address=1.1.1.1 add action=mark-routing chain=prerouting dst-address=2.2.2.2 new-routing-mark=l2tp2 src-address=1.1.1.1 Не могу понять почему они не срабатывают? Я запускаю пинг со второго микрота на первый: ping 1.1.1.1 src-address=2.2.2.2 Cчетчики [admin@Client] <SAFE> ip firewall mangle print stats Flags: X - disabled, I - invalid, D - dynamic # CHAIN ACTION BYTES PACKETS 0 prerouting mark-connection 0 0 1 prerouting mark-connection 0 0 не тикают! Почему так? Изменено 16 августа, 2019 пользователем VolanD666 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 16 августа, 2019 · Жалоба Походу не может микрот PBRить, если пакет инициирован им самим. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 16 августа, 2019 · Жалоба 54 минуты назад, VolanD666 сказал: Походу не может микрот PBRить, если пакет инициирован им самим. это само линуксовое ядро до каких-то версий не могло раньше. теперь вроде может и "голый линукс" и микрот Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 16 августа, 2019 · Жалоба 1 минуту назад, LostSoul сказал: это само линуксовое ядро до каких-то версий не могло раньше. теперь вроде может и "голый линукс" и микрот Дык не работает. Прошивка новейшая. Я так понимаю, что проблема в том, что по пакет флоу внутренние пакеты идут сразу на route decision и не достигают prerouting. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 16 августа, 2019 · Жалоба 1 минуту назад, VolanD666 сказал: Дык не работает. Прошивка новейшая. Я так понимаю, что проблема в том, что по пакет флоу внутренние пакеты идут сразу на route decision и не достигают prerouting. проверил, факт не работает. а в цепочке mangle/output ваш вопрос не решается? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 16 августа, 2019 · Жалоба Ну в аутпут он уже принял решение о роутинге и его не поменять :( Да думаю, что бессмысленно дальше ковыряться. Не может этого микротик :( ЗЫ Спасибо за ваши ответы. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 16 августа, 2019 · Жалоба 37 минут назад, VolanD666 сказал: Ну в аутпут он уже принял решение о роутинге и его не поменять :( Да думаю, что бессмысленно дальше ковыряться. Не может этого микротик :( ЗЫ Спасибо за ваши ответы. через ip rule и разные таблицы то что вы хотите тоже не делается? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
McSea Опубликовано 16 августа, 2019 (изменено) · Жалоба Зачем гадать, на схеме (https://wiki.mikrotik.com/wiki/Manual:Packet_Flow) же видно, что исходящие от роутера пакеты (путь K->L) в prerouting не попадают, только output и postrouting. Изменено 16 августа, 2019 пользователем McSea Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 16 августа, 2019 · Жалоба Ну на схеме как не оень то и видно. Только когда вы ткнули пальцем где это, тогда стало понятно. А так там столько всего понарисовано. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nkusnetsov Опубликовано 17 августа, 2019 · Жалоба @VolanD666 , вполне себе производится "Routing Adjustment" после Mangle-Output. Именно так и разруливается трафик самого роутера между несколькими аплинками. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
user71 Опубликовано 17 августа, 2019 · Жалоба Ясен пень не работает. Прероутинг это входящий трафик. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 17 августа, 2019 · Жалоба 13 часов назад, nkusnetsov сказал: @VolanD666 , вполне себе производится "Routing Adjustment" после Mangle-Output. Именно так и разруливается трафик самого роутера между несколькими аплинками. можете привести пример? Я что-то не могу сообразить, если трафик роутера не проходит звено цепи прероутинг, как тогда PBR делать? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 18 августа, 2019 · Жалоба 2 часа назад, VolanD666 сказал: можете привести пример? Я что-то не могу сообразить, если трафик роутера не проходит звено цепи прероутинг, как тогда PBR делать? /ip address add interface=ether1 address=192.168.1.100/24 add interface=ether2 address=192.168.2.100/24 /route add dst-address=0.0.0.0/0 gateway=192.168.1.1 add dst-address=0.0.0.0/0 gateway=192.168.2.1 routing-mark=to_uplink2 /ip firewall mangle add action=mark-routing chain=output new-routing-mark=to_uplink2 src-address=192.168.2.100 соединения иницированные с local address 192.168.1.100 уходят в 192.168.1.1 , соединения из 192.168.2.100 в 192.168.2.1 если бы кто еще рассказал как при нескольких роут таблицах сделать "общую часть " не дублируя ее вручную , был бы очень признателен. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nkusnetsov Опубликовано 18 августа, 2019 · Жалоба @LostSoul , общей частью обычно служит "main". Она может служить для обработки входящего извне трафика, например, при "пробросе портов". Исходящий же, обрабатывается по PBR, либо маркировками. Если я Вас правильно понял. Вот, тут можно глянуть еще : http://mum.mikrotik.com/presentations/RU18M/presentation_6157_1554717194.pdf Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 18 августа, 2019 · Жалоба 2 часа назад, nkusnetsov сказал: @LostSoul , общей частью обычно служит "main". Она может служить для обработки входящего извне трафика, например, при "пробросе портов". Исходящий же, обрабатывается по PBR, либо маркировками. Если я Вас правильно понял. Вот, тут можно глянуть еще : http://mum.mikrotik.com/presentations/RU18M/presentation_6157_1554717194.pdf это то понятно. а вот как мне к примеру получить main и две дублирующих ее таблицы роутинга , чтоб в них было все как в main но другой default gateway? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nkusnetsov Опубликовано 18 августа, 2019 (изменено) · Жалоба @LostSoul , автоматом никак. У себя делаю альтернативные таблицы содержащие только другой default gateway. Они для исходящего трафика. Обычно только входящему трафику, нужны connected маршруты. Его запускаю в main по-умолчанию (или VRF, но это отдельная песня). Исходящий тоже по-умолчанию идёт по main. Только отдельным видам исходящего нужен альтернативный шлюз. Тогда его можно и пометить в mangle. Или PBR запилить. 1 час назад, LostSoul сказал: получить main и две дублирующих ее таблицы роутинга , чтоб в них было все как в main но другой default gateway? Конкретно у Вас для чего хочется дублировать main? Выше уровнем какая задача? Изменено 18 августа, 2019 пользователем nkusnetsov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 18 августа, 2019 · Жалоба 1 час назад, LostSoul сказал: это то понятно. а вот как мне к примеру получить main и две дублирующих ее таблицы роутинга , чтоб в них было все как в main но другой default gateway? Ну я думаю что это можно сделать через ликинг. Т.е. перелить все роуты с исходной таблицы в нужную. А в нужной написать роут через нужны гейт. Но я думаю то именно с глобал такой фокус не получится :( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 18 августа, 2019 · Жалоба 16 минут назад, nkusnetsov сказал: Конкретно у Вас для чего хочется дублировать main? Выше уровнем какая задача? ну у меня не прямо про микротик задача. есть multihomed сервер ( на нем IP трех разных провайдеров ) , на котором крутится много сервисов высокой доступности и много разных дополнительных маршрутов main ( хотя бы к тем же контейнерам openvz , каждый в свой venet ) при этом контейнеры должны располагать и доступом к друг другу и всяким локальным сегментам тоже, поэтому около сотни маршрутов приходится копировать в таблицы to_isp1 , to_isp2 , to_isp3. в данном конкретном случае задача была успешно решена через bird и его протокол pipe. но хотелось бы более изящного решения средствами iproute , чтоб описать некий общий блок правил маршрутизации , и вставлять его и в main и в дополнительные таблицы. однако я после вдумчивого чтения man подобного не нашел. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nkusnetsov Опубликовано 18 августа, 2019 (изменено) · Жалоба 24 минуты назад, LostSoul сказал: сть multihomed сервер ( на нем IP трех разных провайдеров ) Правильно ли я понимаю, что "белые" IP у Вас только в количестве 3шт., на интерфейсах подключенных к провайдерам? Локальные сервисы находятся на локальных "серых" адресах? давайте абстрактный пример с адресацией подобной используемой Вами попробуем разобрать. Изменено 18 августа, 2019 пользователем nkusnetsov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 18 августа, 2019 · Жалоба 1 минуту назад, nkusnetsov сказал: Правильно ли я понимаю, что "белые" IP у Вас только в количестве 3шт., на интерфейсах подключенных к провайдерам? Локальные сервисы находятся на локальных "серых" адресах? там целый букет всего намешан. есть свои собственные адреса , резервированные по BGP , есть подсети реальных адресов соответствующего размера завернутые от 2 аплинков из 3 . Третий канал просто обычный IP , 3 шт от одного оператора и с них сервисы раскиданы по "локальным" ( своим реальным ) адресам. Общий смысл в том, чтоб система не прекращала работу на время обновления bgp при аварии. так же система сохраняет высокий уровень доступности при всяких сложных авариях, когда одна половина рунета не видит другую. это условно говоря, коммуникационная платформа типа "своего телеграмм" по обмену сообщениями и файлами, на которую завязано много внутреннего корпоративного функционала и экстренных оповещений. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nkusnetsov Опубликовано 18 августа, 2019 (изменено) · Жалоба А, ну тогда всё действительно сложнее. Как вариант, в микротике можно скриптом периодически активные маршруты из main переносить в именованые таблицы. Но это всё-же костыли. Изменено 18 августа, 2019 пользователем nkusnetsov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
LostSoul Опубликовано 18 августа, 2019 · Жалоба Только что, nkusnetsov сказал: Как вариант, можно скриптом периодически активные маршруты из main переносить в именованые таблицы. bird protocol pipe - нормально все работает. правда пока bird не выпал в корку.... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 18 августа, 2019 · Жалоба Странно, попробовал маркировать роуты на аутпут и врде счетчики тикают на схеме в GNS3. Но у меня ведь тоже самое? Как так? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 18 августа, 2019 · Жалоба Очень странно, полностью повторил схему в ГНС и ве ок, работает. Странно почему на реальной железке не взлетает :( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
VolanD666 Опубликовано 19 августа, 2019 · Жалоба В общем,, не наю что было. Пересобрал схему и все завелось. Вопрос закрыт Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...