@yarusakov
Инженер-программист

Mikrotik: 2шлюза. Нет пинга между промаркированными локальными адресами. Как быть?

Имеется железка Mikrotik с двумя шлюзами в интернет.

Интерфейсы:
eth1-Provider1
eth2-Provider2
eth3-Local

Подсети (для удобства раздробил /24):
[admin@MikroTik] /ip pool> print detail
0 ranges=172.16.19.32/27
1 ranges=172.16.19.64/26
2 ranges=172.16.19.128/26
3 ranges=172.16.19.192/26

Маркировка:
[admin@MikroTik] /ip route rule> print detail
Flags: X - disabled, I - inactive
0 src-address=172.16.19.64/26 action=lookup table=out2
1 src-address=172.16.19.192/26 action=lookup table=out1
2 src-address=172.16.19.128/26 action=lookup table=out2
3 src-address=172.16.19.32/27 action=lookup table=out1

Два роута на провайдеров:
0 A S dst-address=0.0.0.0/0 pref-src=172.16.19.1 gateway=pppoe-out1
gateway-status=pppoe-out1 reachable distance=1 scope=30 target-scope=10
routing-mark=out1

1 A S dst-address=0.0.0.0/0 pref-src=172.16.19.1 gateway=pppoe-out2
gateway-status=pppoe-out2 reachable distance=1 scope=30 target-scope=10
routing-mark=out2

Пробросы на шлюзы провайдеров работают отлично, компы ходят куда надо. НО! Пинги между локальными подсетями не ходят. Если убрать роуты, то все норм. Доступны компы только из своей подсети. Если маркировку делаю персонально на каждый IP, то вообще ни до одного не достучатся в локалке, доступен только адрес микротика. Трассировка показывает что запрос уходит мимо микротика на провайдера.

Каким правилом победить? Нужно чтобы и в инет ходили на заданный шлюз, и доступность между компами была.
  • Вопрос задан
  • 1709 просмотров
Решения вопроса 2
@satoo
какие у микротика локальные адреса?
у локальных компов какая маска подсети и шлюз?
покажите
/ip route print
/ip address print
Ответ написан
vasilevkirill
@vasilevkirill
Сертифицированный тренер MikroTik TR0417
Так поведение маршрутизатора правильно, вы как настроили он так и работает! =))
давайте смотреть
/ip route rule> print detail
0 src-address=172.16.19.64/26 action=lookup table=out2 
1 src-address=172.16.19.192/26 action=lookup table=out1 
2 src-address=172.16.19.128/26 action=lookup table=out2 
3 src-address=172.16.19.32/27 action=lookup table=out1

хост 172.16.19.65 хочет соединиться с 172.16.19.193, что произоёдет?
по вашей схеме
src-address=172.16.19.64/26 action=lookup table=out2
маршрутизатор будет искать маршрут для данного хоста в таблице out2, конкретно в таблице out2 есть маршрут 0.0.0.0/0 который будет использован в для данного трафика.
Соостветсвено вам либо в route rule сделать исключение и направить данный трафик в таблицу main
либо в mangle исключить маршрутизацию к сетям bogon
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Попробуйте дописать маршруты для каждой подсети. У вас по сути только 2 маршрута сейчас, и оба они - по умолчанию, куда и уходит весь трафик, в т.ч. локальный межсетевой.

И почему до провайдеров у вас роуты? Вы не натите трафик?
Возможен, наверно, альтернативный вариант - маркировать трафик (или сразу натить), направляющийся не в 172.16.19.0/24 фаерволом, а не правилами маршрутизации.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы