Сложная маршрутизация на Mikrotik

Обсуждение ПО и его настройки
mistiq
Сообщения: 18
Зарегистрирован: 13 окт 2011, 09:55

Я нашел в каком правиле проблема, но не знаю как это исправить:

Код: Выделить всё

/ip firewall mangle add chain=prerouting src-address-list=local dst-address-list=!local action=mark-routing new-routing-mark=route_to_proxy in-interface=!ether9
/ip route add dst-address=0.0.0.0/0 gateway=10.1.1.2 routing-mark=route_to_proxy
/ip firewall address-list add address=10.0.0.0/8 list=local
/ip firewall address-list add address=[b]172.16.0.0/13[/b] list=local   
/ip firewall address-list add address=192.168.0.0/16 list=local

Модифицировал по Вашему совету, и исключил транзитную сеть на WAN интерфейсе прокси из списка local
172.24.2.0 не принадлежит local.

Сейчас работает вот такая схема:
Изображение
На всякий случай если картинка не показывается ссылка http://saveimg.ru/pictures/03-11-11/0e9 ... d9b8f2.jpg

Делаю трассировку до 8.8.8.8 с клиента TESTB
1 <1мс <1мс <1мс 10.100.103.1
2 <1мс <1мс <1мс 192.168.168.1
3 <1мс <1мс <1мс 10.1.1.2 (Это прокси, роутинг отработал)
4 <1мс <1мс <1мс 192.168.168.1 Вот тут становится совершенно не понятно, откуда взялся этот хоп?
5 * * * *

Похоже петля, но почему это происходит не понятно совершенно.

И ещё один момент. Когда я вынимаю патчкорд из порта ether9 то 4 <1мс <1мс <1мс 192.168.168.1 исчезает

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


iSupport
Сообщения: 2359
Зарегистрирован: 06 фев 2011, 20:44

картинка выдает 403 - форбидден


без схемы сложно понять


Граждане, сколько раз просил =) чем понятнее и точнее сформулирован вопрос - тем понятнее и точнее будет на него ответ.
Я просматриваю ВСЕ темы форума и стараюсь помочь в каждой из них
Поэтому, НА ЛС отвечаю в последнюю очередь
mistiq
Сообщения: 18
Зарегистрирован: 13 окт 2011, 09:55

iSupport писал(а):картинка выдает 403 - форбидден


без схемы сложно понять

Извиняюсь, перезалил картинку на другой хостинг
Изображение

Код: Выделить всё

/ip firewall mangle add chain=prerouting src-address-list=local dst-address-list=!local action=mark-routing new-routing-mark=route_to_proxy in-interface=!ether9
/ip route add dst-address=0.0.0.0/0 gateway=10.1.1.2 routing-mark=route_to_proxy
/ip firewall address-list add address=10.0.0.0/8 list=local
/ip firewall address-list add address=172.16.0.0/12 list=local   
/ip firewall address-list add address=192.168.0.0/16 list=local


В соответствии с этим правилом все пакеты пришедшие на интерфейсы отличные от ether9 с src = списку локальных сетей и dst != этому списку отправляются на IP адрес прокси сервера.
По идее должно работать. Но при трассировке до публичного IP с RouterB и с клиента TestB наблюдается очень странная картина.
Трассировка с RouterB:

Код: Выделить всё

[admin@M3] > tool traceroute 8.8.8.8
 # ADDRESS                                 RT1   RT2   RT3   STATUS             
 1 192.168.168.1                           1ms   1ms   1ms                       
 2 10.1.1.2                              1ms   1ms   1ms                       
[b]3 192.168.168.1                           1ms   1ms   1ms[/b]     

С роутера А трассировка до 8.8.8.8 отрабатывает правильно.
Спасибо!

UPD:
Ещё одна странность:
Выключаю порт ether9
Снова делаю трассировка с роутераВ до 8.8.8.8

Код: Выделить всё

[admin@M3] > tool traceroute 8.8.8.8
 # ADDRESS                                 RT1   RT2   RT3   STATUS           
 1 192.168.168.1                           1ms   1ms   1ms                     
 2 10.1.1.2                              0ms   1ms   1ms                     
 3 10.1.1.2                              1ms   1ms   1ms   host unreachable 
 4 10.1.1.2                              1ms   1ms   1ms   host unreachable 
 5 10.1.1.2                              1ms   1ms   1ms   host unreachable 
 6 10.1.1.2                              1ms   1ms   1ms   host unreachable 
 7 10.1.1.2                              1ms   1ms   1ms   host unreachable 
<SKIPPED>

И так до бесконечности.


iSupport
Сообщения: 2359
Зарегистрирован: 06 фев 2011, 20:44

Смотри. Во-первых, правило Нат надо сделать для пакетов от прокси

а то прокси сунулся до микротика А а куда дальше направлять пакет - ХЗ

Во вторых - подробнее просмотри правила на логические И и ИЛИ


Когда вытаскиваешь Етз 9 все правильно

Микротик А скинул на прокси - прокси посмотрел - а слать то и некуда Вот и вернул что Хост анричейбл


Граждане, сколько раз просил =) чем понятнее и точнее сформулирован вопрос - тем понятнее и точнее будет на него ответ.
Я просматриваю ВСЕ темы форума и стараюсь помочь в каждой из них
Поэтому, НА ЛС отвечаю в последнюю очередь
mistiq
Сообщения: 18
Зарегистрирован: 13 окт 2011, 09:55

iSupport писал(а):Смотри. Во-первых, правило Нат надо сделать для пакетов от прокси

а то прокси сунулся до микротика А а куда дальше направлять пакет - ХЗ


Так я же писал вроде что с самого прокси все работает, не работают именно транзитные пакеты.
Следовательно НАТ для src=172.24.2.2 dst=8.8.8.8 отрабатывает верно.

iSupport писал(а):Во вторых - подробнее просмотри правила на логические И и ИЛИ


Когда вытаскиваешь Етз 9 все правильно

Микротик А скинул на прокси - прокси посмотрел - а слать то и некуда Вот и вернул что Хост анричейбл


Правило НАТ для прокси делал.
in-interface=ether9 routing-mak=to-nat
и натил по этой метке.
Ситуация такая же. Точнее если пакет отправлен самой прокси то натит без проблем, если пакет прошел через прокси то не работает.
Сейчас я действую методом исключения, тоесть отключаю все компоненты в попытках найти где не работает.
Определил что проблема именно в первом правиле мангл. Такое ощущение что не работает in-interface.

По поводу логики. Пробовал видоизменить правило
/ip firewall mangle add chain=prerouting src-address-list=local dst-address-list=!local action=mark-routing new-routing-mark=route_to_proxy in-interface=ether6
где ether6 аплинк до роутераВ - ничего не поменялось.

UPD:
Включил на прокси нат, все заработало у клиента. Но двойной нат это не самое красивое решение.
Долго медитировал над логами фаервола на микротике. Собственно на первый взгляд все верно и все работает как надо.
скорее всего маркировка этим правилом отрабатывает не так как надо, а именно маркирует пакет route_to_proxy и main маркерами одновременно. Других версий у меня нет.
Написал в официальный суппорт микротика, жду ответа от них.


mistiq
Сообщения: 18
Зарегистрирован: 13 окт 2011, 09:55

Уточнил проблему.
Удалось поставить в разрыв между провайдером и роутеромА сниффер.

Оказывается что пакеты из локальных сетей уходят "неотначенные"

Правила такие:

chain=prerouting action=mark-routing new-routing-mark=To_NAT src-address-list=local dst-address-list=!local passthrough=yes in-interface=ether9

chain=srcnat action=masquerade routing-mark=To_NAT src-address-list=local dst-address-list=!local out-interface=ether10

Вроде все просто и правильно. Ан нет.
Что может быть не так?

PS пожалуйста обратите внимание на маленький ньюанс.
В такой конфигурации пакеты инициированные самим прокси сервером натятся без проблем.
Не натятся ТОЛЬКО транзитные пакеты.

Спасибо.


iSupport
Сообщения: 2359
Зарегистрирован: 06 фев 2011, 20:44

я запустался ;)

давайте так.

Весь конфиг роутера, и торч интерфейсов *К прокси* и *от прокси* с параметрами ПОРТ и ПРОТОКОЛ

а также торч на Ван интерфейс


Граждане, сколько раз просил =) чем понятнее и точнее сформулирован вопрос - тем понятнее и точнее будет на него ответ.
Я просматриваю ВСЕ темы форума и стараюсь помочь в каждой из них
Поэтому, НА ЛС отвечаю в последнюю очередь
mistiq
Сообщения: 18
Зарегистрирован: 13 окт 2011, 09:55

прежде чем показывать торч и сниффер с микротика спрошу:
есть интерфей ether6 это то, куда включен роутерБ
какого хрена на нем я вижу широковещалку с ether10?

Порты изолированные, мастер порта нету.


iSupport
Сообщения: 2359
Зарегистрирован: 06 фев 2011, 20:44

возможно ноги растут от того, что порты в 1 чипе

там порты 6-10 контролирует один чип

http://wiki.mikrotik.com/wiki/Manual:Sw ... p_Features


либо что-то не так с настройками

проверьте меню /switch


Граждане, сколько раз просил =) чем понятнее и точнее сформулирован вопрос - тем понятнее и точнее будет на него ответ.
Я просматриваю ВСЕ темы форума и стараюсь помочь в каждой из них
Поэтому, НА ЛС отвечаю в последнюю очередь
mistiq
Сообщения: 18
Зарегистрирован: 13 окт 2011, 09:55

В меню свитч все пусто. тобешь по дефолту.


Ответить