FAQ ROS 7: BGP

Раздел для тех, кто начинает знакомиться с MikroTik
Правила форума
Как правильно оформить вопрос.
Прежде чем начать настройку роутера, представьте, как это работает. Попробуйте почитать статьи об устройстве интернет-сетей. Убедитесь, что всё, что Вы задумали выполнимо вообще и на данном оборудовании в частности.
Не нужно изначально строить Наполеоновских планов. Попробуйте настроить простейшую конфигурацию, а усложнения добавлять в случае успеха постепенно.
Пожалуйста, не игнорируйте правила русского языка. Отсутствие знаков препинания и неграмотность автора топика для многих гуру достаточный повод проигнорировать топик вообще.

1. Назовите технологию подключения (динамический DHCP, L2TP, PPTP или что-то иное)
2. Изучите темку "Действия до настройки роутера".
viewtopic.php?f=15&t=2083
3. Настройте согласно выбранного Вами мануала
4. Дочитайте мануал до конца и без пропусков, в 70% случаев люди просто не до конца читают статью и пропускают важные моменты.
5. Если не получается, в Winbox открываем терминал и вбиваем там /export hide-sensitive. Результат в топик под кат, интимные подробности типа личных IP изменить на другие, пароль забить звездочками.
6. Нарисуйте Вашу сеть, рисунок (схему) сюда. На словах может быть одно, в действительности другое.
xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

Fasttrack у вас умирает не по какому то магическому образу, потому что «добавляются условия», а потому что пакеты перестают этим условиям удовлетворять.
У пакетов для таблицы main нет routing mark, условие будет routing-mark=no-mark.
Так тоже можно.
Но я писал про routing-table=main.

Но вообще я отвечал с телефона по памяти: там и в том в том варианте надо еще доп условие на направление трафика (наружу) - ведь и у «завернутых» соединений половина пакетов идет по основной таблице.

Сейчас посмотрел, у меня именно в этой задаче используется connection-mark=no-mark.
В мангл, разумеется, сначала помечаются соедениния, уже по ним - роутинг, что дополнительно снижает нагрузку.

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


Telegram: @thexvo
Аватара пользователя
podarok66
Модератор
Сообщения: 4402
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

Спасибо автору за долгожданный материал. Тем более, с каждым днём тема становится всё актуальнее и актуальнее.
Спасибо участникам форума за живейшее общение.


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
Vapix
Сообщения: 6
Зарегистрирован: 10 янв 2023, 21:28

xvo писал(а): 12 янв 2023, 12:15 Белый список - если речь про свои личные исключения - какие проблемы создать до них маршруты с меньшей метрикой?
Со списком whitelist я добавляю нужный домен и какие то поддомены, по имени, обычно взлетает, если не взлетает, то смотрю куда ещё стучится и добавляю недостающие поддомены. А с добавкой в маршруты нужен IP, не допёр как туда автоматизировать добавление по списку доменов. Да и непонятно что будет если будет два маршрута с минимальной метрикой? Со списком в этом плане проще, т.к. он просто ставится первым правилом.


xvo
Сообщения: 4230
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

Собственно наконец мы подошли к реальному минусу подхода с чистой маршрутизацией - неумением работать с доменными именами.

В принципе в 7ке это задача казалось бы почти решена (правда с необходимостью отдельной железки) - там вместо BGP networks используется обычный address-list - можно было бы отдать любой список адресов по BGP.
Но нет - зачем-то убрали возможность выставить synchronize=no, и при отсутствии маршрутов, отдать просто список все равно не получится.

В общем если это критично, используйте список - в вашем варианте с mangle можно первым правилом в prerouting делать accept для белого списка, а уже ниже - маркировки для того, что заворачивается в туннель.

В варианте, когда все реализовано маршрутами, а белый список - списком, получается наоборот, для белого списка придется отключать fasttrack, создавать отдельную таблицу и т.д.
В общем как по изначальному посту.
Vapix писал(а): 12 янв 2023, 19:07 Да и непонятно что будет если будет два маршрута с минимальной метрикой? Со списком в этом плане проще, т.к. он просто ставится первым правилом.
Откуда им взяться двум, да еще и с минимальной метрикой?
Вы же его руками создаете.
Вот и создайте с метрикой меньше, чем у полученных по BGP (или альтернативно у полученных по BGP поднимите метрику).

Ну и потом, понятно что будет, если два одинаковых маршрута, но с разным гейтом - ECMP - оба будут использоваться.


Telegram: @thexvo
Vapix
Сообщения: 6
Зарегистрирован: 10 янв 2023, 21:28

xvo писал(а): 13 янв 2023, 11:43 В общем если это критично, используйте список - в вашем варианте с mangle можно первым правилом в prerouting делать accept для белого списка, а уже ниже - маркировки для того, что заворачивается в туннель.
Так и сделано. И ещё раньше стоит правило, которое дропает всякие запросы к телеметрии винды и китайским шпионам, куда стучатся всякие xiaomi, huawei и прочие tencent, для железок у которых нет возможности альтернативных пршивок. В целом тема фильтрации и маршрутизации трафика по спискам и таблицам маршрутов имеет довольно много применений.
P.S. По тестам у меня выходит что для wireguard от fasttrack в реалиях домашних роутеров мало толку, что он включен что нет, разницы в производительности не увидел, или он не умеет с программными интерфейсами работать нормально (пробовал просто завернуть весь трафик, без mangle вообще, с включенным fasttrack для всего), или просто всю производительность сжирает сам wireguard. Но в целом скорости для домашнего применения более чем. Через виндовый клиент скорости всё таки получались выше. Речь о гигабите конечно, для 100 мегабитных тарифов думаю можно на это всё вообще не обращать внимания.


Fill
Сообщения: 2
Зарегистрирован: 23 фев 2023, 19:18

Кто поможет подружить ROS 7x с BGP, перешел со своего старого доброго hAP ac (RB962UiGS-5HacT2HnT) на ax3 и мальца офигел :-): , ну вроде бы все настроил, а как получить маршруты со своего сервера пока не понял, с antifilter.download прилетают, но мне нужны свои.
Имеется сервер Debian c настроенным которым прекрасно дружил ROS 6x на вот таких настройках
Изображение
собственно к нему же подключен по l2tp и все было замечательно.
И сразу вопрос, дружит ли с ним (с bird) ROS 7x, если нет ткните с чем дружит, по аналогии попытался прописать свои параметры увы глухо :-(


cocainus
Сообщения: 4
Зарегистрирован: 07 мар 2019, 20:09

Vapix писал(а): 10 янв 2023, 21:58 Ваше решение, на мой личный взгляд, имеет ряд недостатков. Главный недостаток, что оно создаёт огромну таблицу маршрутов, а это не нужно, все они ведут в одну точку (в тот VPN, или интерфейс, который поднял юзер). Это всё гораздо проще и дешевле (с точки зрения ресурсов) сделать через Mangle, через тот же лист с соответствующим списком IP, подтянутым с того же ресурса. А маршрут с этой меткой прописать один. Причём первым правилом поставить whitelist и маркировать там всё в цепочку main (заснести туда ресурсы, котрый блочатся излишне, и на которые вы однозначно хотите выйти со своего IP), а вторым в лист блокировок, который маркировать в цепочку указывающую на VPN, и не забыть в обеих правилах убрать галку forward (во многих мануала про это забывают, и получают дублирование трафика, или вообще нерабочую схему).

Изображение

Mangle работает в прероутинге. Маркировка не занимает много памяти и времени СPU, листы хоть в 100k записей будет обрабатывать даже самый хилый домашний девайс. И главный плюс - работает FastPath (правда нужно настроить на ваши интерфейсы и прописать как для входящего так и исходяшего установленных соединений).

Изображение

Тогда уже установленные соединения оффлоадятся полность хардварно, тот же hEX спокойно качает гигабит с разделением трафика на прямой и VPN Wireguard по тому самому списку. Подробную настройку могу изложить в ЛС, схема рабочая и обкатанная, работает без тормозов вообще с любым по размеру листом. Возможно даже выпущу мануал, т.к. те что я встречал писали видимо не совсем понимающие люди, предлагая то отключение FastPath (а это хана процам домашних железок сразу), то ещё какую то дичь.
P.S. По BGP имеет смысл получать маршруты ведущие в разные точки, для целей же направить трафик по листу в один VPN, абсолютно никакой разницы по какому протоколу получить этот самый список адресов нет. Единственное, заранее вписать адрес с котрого забирать в списк сразу, это абсолютно правильно.

Здравствуйте, а не могли бы Вы в личном сообщении прислать мануал?


Ответить