Доброго времени суток.
Итак - я снова с вопросом. Имеется 2 провайдера и нужно сделать load balancing. Тема, казалось, бы уже избитая и обсосанная до невозможности, но есть в моем случае 1 нюанс - оба правайдера работают только через DHCP. Т е, часть инструкции, которая гуляет по инету выполнить не представляется возможным. Нельзя ни чек гейтвея выставить ни роутинг тейбл поменять. Всё, что нормально можно сделать - это маркировка пакетов/маршрутизации. Дальше - затык.
Вопрос - это вообще реально? Или нужно только мастырить ещё 2 промежуточных узла на каждого провайдера (ещё 1 NAT)?
Load Balancing на динамических гейтвеях
-
- Сообщения: 4230
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
Конечно реально.
Скрипт вешаете на dhcp-клиентов, который при смене адреса/гейтвея подновляет маршруты.
Скрипт стандартный, из примеров с микротиковской вики.
Скрипт вешаете на dhcp-клиентов, который при смене адреса/гейтвея подновляет маршруты.
Скрипт стандартный, из примеров с микротиковской вики.
Telegram: @thexvo
-
- Сообщения: 16
- Зарегистрирован: 17 авг 2022, 19:26
https://wiki.mikrotik.com/wiki/Manual:PCC
Что-то я тут скриптов не увидел...
И ещё
add action=mark-routing chain=prerouting connection-mark=ether1_conn in-interface=bridge passthrough=yes
Оно потом упорно мне выдает Connection mark - main (по имени дефолтной VRFки), хотя перед этим сделан mark connections и там этот марк четко прописан. Чего ему для счастья не хватает?
Что-то я тут скриптов не увидел...
И ещё
add action=mark-routing chain=prerouting connection-mark=ether1_conn in-interface=bridge passthrough=yes
Оно потом упорно мне выдает Connection mark - main (по имени дефолтной VRFки), хотя перед этим сделан mark connections и там этот марк четко прописан. Чего ему для счастья не хватает?
-
- Сообщения: 4230
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
https://wiki.mikrotik.com/wiki/Manual:I ... t#ExamplesVTX писал(а): ↑21 авг 2022, 20:49 https://wiki.mikrotik.com/wiki/Manual:PCC
Что-то я тут скриптов не увидел...
Условие на connection-mark вижу.VTX писал(а): ↑21 авг 2022, 20:49 И ещё
add action=mark-routing chain=prerouting connection-mark=ether1_conn in-interface=bridge passthrough=yes
Оно потом упорно мне выдает Connection mark - main (по имени дефолтной VRFки), хотя перед этим сделан mark connections и там этот марк четко прописан. Чего ему для счастья не хватает?
Какую ставить routing-mark - не вижу.
И да, если 7ка, то таблицу надо предварительно создавать, автоматом не создастся.
Telegram: @thexvo
-
- Сообщения: 16
- Зарегистрирован: 17 авг 2022, 19:26
Вот полностью:
Код: Выделить всё
/ip firewall mangle
add action=mark-connection chain=input in-interface=ether1 new-connection-mark=ether1_conn
add action=mark-connection chain=input in-interface=lte1 new-connection-mark=lte_conn
add action=mark-routing chain=output connection-mark=ether1_conn passthrough=yes
add action=mark-routing chain=output connection-mark=lte_conn passthrough=yes
add action=mark-connection chain=prerouting dst-address-type=!local in-interface=bridge new-connection-mark=ether1_conn passthrough=yes per-connection-classifier=both-addresses-and-ports:2/0
add action=mark-connection chain=prerouting dst-address-type=!local in-interface=bridge new-connection-mark=lte_conn passthrough=yes per-connection-classifier=both-addresses-and-ports:2/1
add action=mark-routing chain=prerouting connection-mark=ether1_conn in-interface=bridge passthrough=yes
add action=mark-routing chain=prerouting connection-mark=lte_conn in-interface=bridge passthrough=yes
-
- Сообщения: 4230
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
Вот я и говорю.
Вы все проходящие соединения размечать размечаете, а дальше с ними ничего не делаете.
И только соединения самого роутера (input/output) распихиваете по разным таблицам.
Все остальные так и остаются в основной.
Последние два правила почему ничего не делают?
Telegram: @thexvo
-
- Сообщения: 16
- Зарегистрирован: 17 авг 2022, 19:26
Каким таблицам? Если вы про VRF, то их 2 - main и вторую я создал lteT. И тут вроде как ни одна не упомянута...
Вообще, это обязательно для LB - распихивать интерфейсы по разным VRFам? Или можно обойтись одним (main)?
Из инструкции брал - их не густо, если речь идет о последней версии ROS. Как я понимаю, они (эти 2 правила) не полные и, походу, система закончила их за меня, предложив их раскидать на оба VRFа.
-
- Сообщения: 4230
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
VRF у вас должна быть одна.
У вас таблиц маршрутизации должно быть три: main и по одной на каждого провайдера.
У вас таблиц маршрутизации должно быть три: main и по одной на каждого провайдера.
Telegram: @thexvo
-
- Сообщения: 16
- Зарегистрирован: 17 авг 2022, 19:26
Хорошо, а что делать с гейтвеями? В инструкции правила ссылаются на реальные адреса:
add address=10.111.0.2/24 network=10.111.0.0 broadcast=10.111.0.255 interface=ISP1
add address=10.112.0.2/24 network=10.112.0.0 broadcast=10.112.0.255 interface=ISP2
и
/ ip route
add dst-address=0.0.0.0/0 gateway=10.111.0.1 routing-mark=to_ISP1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.112.0.1 routing-mark=to_ISP2 check-gateway=ping
Я так понимаю, что тут мне как-то должен помочь скрипт, но каким образом?
И ещё одна проблема - я не могу поставить скрипт на DHCP-клиент интерфейса lte1 - он создается динамически.
add address=10.111.0.2/24 network=10.111.0.0 broadcast=10.111.0.255 interface=ISP1
add address=10.112.0.2/24 network=10.112.0.0 broadcast=10.112.0.255 interface=ISP2
и
/ ip route
add dst-address=0.0.0.0/0 gateway=10.111.0.1 routing-mark=to_ISP1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=10.112.0.1 routing-mark=to_ISP2 check-gateway=ping
Я так понимаю, что тут мне как-то должен помочь скрипт, но каким образом?
И ещё одна проблема - я не могу поставить скрипт на DHCP-клиент интерфейса lte1 - он создается динамически.
-
- Сообщения: 4230
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
Скрипт должен создавать «кастомные» маршруты и менять их при смене адреса/гейтвея.
Естественно его надо адаптировать под свою ситуацию.
Как быть с lte - не могу сказать.
Там динамически создантся сам dhcp-клиент?
Естественно его надо адаптировать под свою ситуацию.
Как быть с lte - не могу сказать.
Там динамически создантся сам dhcp-клиент?
Telegram: @thexvo