Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • Changelogs
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    Несколько шлюзов WAN с SRC и DST NAT.

    Несколько шлюзов WAN с SRC и DST NAT.

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Несколько шлюзов WAN с SRC и DST NAT., RouterOS
     
    Diatheke
    Guest
    #1
    0
    11.12.2006 23:37:00
    Я уже некоторое время использую плату PC Engines WRAP с несколькими ethernet-интерфейсами под Debian GNU/Linux для создания балансировщика нагрузки WAN для моих DSL и кабельных интернет-соединений, и это работает успешно. Несколько месяцев я экспериментировал с MikroTik OS на RouterBoard 500 и 153 для использования в качестве точки доступа и HotSpot, и мне показалось, что я также могу использовать его как балансировщик нагрузки WAN, чтобы заменить мою WRAP плату.

    В общем, я настроил несколько WAN шлюзов, как описано в WIKI здесь: http://wiki.mikrotik.com/wiki/Load_Balancing, и всё отлично работает на исходящем трафике. Однако, когда я пытаюсь включить простую dst-nat, например, вот так:

    [admin@rb153] ip firewall nat> print
    Флаги: X - отключено, I - недействительно, D - динамический
    0   chain=srcnat out-interface=ether1 src-address=192.168.111.0/24
        connection-mark=odd action=masquerade

    1   chain=srcnat out-interface=ether2 src-address=192.168.111.0/24
        connection-mark=even action=masquerade

    2   chain=dstnat in-interface=ether1 dst-address=192.168.111.254 protocol=tcp
        dst-port=3389 action=dst-nat to-addresses=<WAN CABLE IP> to-ports=3389

    3   chain=dstnat in-interface=ether2 dst-address=192.168.111.254 protocol=tcp
        dst-port=3389 action=dst-nat to-addresses=<WAN DSL IP> to-ports=3389

    Затем я пытаюсь подключиться к сети через RDP, но не могу подключиться. С моей WRAP боксом, использующей Debian GNU/Linux, я делаю так:
    iptables -t nat -A PREROUTING -p tcp -d $IPE1 --dport 3389 -j DNAT --to-destination 192.168.111.254
    iptables -t nat -A PREROUTING -p tcp -d $IPE2 --dport 3389 -j DNAT --to-destination 192.168.111.254

    Итак, мой первый вопрос: кто-нибудь успешно использовал MikroTik OS 2.9.31 как для src, так и для dst nat с несколькими шлюзами? Я также безуспешно пытался убирать из моих правил dst-nat такие вещи, как “in-interface”, и я также пытался использовать действие redirect вместо dst-nat, чтобы мне не приходилось указывать “to-address”.

    В общем, у меня нет проблем с исходящим трафиком, но входящие подключения с использованием конфигурации dst-nat не работают для меня. Есть какие-нибудь общие предложения?
     
     
     
    Diatheke
    Guest
    #2
    0
    13.12.2006 17:20:00
    Я всё ещё пытаюсь понять, как решить эту проблему. Короче говоря, мне нужно, чтобы сам роутер отслеживал, когда трафик предназначен для него, и обеспечивал, чтобы трафик, предназначенный для него, выходил через тот же шлюз, а не просто использовал простой маршрут по умолчанию к конкретному шлюзу. Мне кажется, что подход, который я использовал с Debian GNU/Linux, заключался в отслеживании состояния всего и построении таблиц маршрутизации. А в ROS, используя решение из Wiki, я ищу новые сессии, которые попеременно помечают маршруты, чтобы трафик, перенаправляемый через роутер, проходил через оба шлюза WAN. Как я упоминал ранее, это отлично работает для исходящего трафика, но если вы хотите использовать dst-nat, то трафик, заканчивающийся на роутере, работает только на одном подключении. Причина в том, что весь трафик, исходящий от роутера, использует только один шлюз. Провайдеры часто реализуют проверки обратного пути. Так если пакет получен через один шлюз, а ответ пришёл с другого, то это считается поддельным трафиком. Я понимаю, что асимметричный маршрутинг в Интернете довольно распространен, но это происходит в ядре, а не на кабельных и DSL-соединениях на уровне границы/агрегации. Так что, в общем, я пытаюсь понять, как хранить состояние входящих подключений к самому роутеру в ROS. Сначала я подумал, что могу попробовать что-то вроде: add chain=prerouting in-interface=wan1 action=mark-routing new-routing-mark=odd passthrough=no Я также пробовал менять цепочку на "input", но это тоже не сработало. В любом случае, есть ли у кого-нибудь идея, как хранить состояние, чтобы входящий трафик к роутеру сохранял своё состояние, чтобы трафик выходил через этот интерфейс?
     
     
     
    sergejs
    Guest
    #3
    0
    12.12.2006 14:04:00
    Судя по твоим правилам iptables для Debian, ты смешал dst-address и to-address. Dst-address должен быть адресом удаленного маршрутизатора, а ‘to-address’ — локальным адресом (куда должны быть доставлены пакеты).
     
     
     
    Diatheke
    Guest
    #4
    0
    12.12.2006 14:49:00
    Блин, чую, это было очевидно, когда ты об этом упомянул. Dst-Nat работает как часы.
     
     
     
    Diatheke
    Guest
    #5
    0
    12.12.2006 21:10:00
    Встретил ещё одну небольшую загвоздку, пытаюсь разобраться, как её решить в MikroTik OS. В Debian/GNU Linux системе, используя пакет iproute, я делаю следующее:
    ip link set $IFI up
    ip addr flush dev $IFI
    ip addr add $IPI/$NMI dev $IFI
    ip rule del table main
    ip rule add prio 50 table main
    ip route del default table main

    ip link set $IFE1 up
    ip addr flush dev $IFE1
    ip addr add $IPE1/$NME1 brd $BRD1 dev $IFE1

    # можно использовать для DNAT (iptables nat не будет делать ARP)
    ip addr add $IPE11 dev $IFE1

    ip link set $IFE2 up
    ip addr flush dev $IFE2
    ip addr add $IPE2/$NME2 brd $BRD2 dev $IFE2

    ip rule del from $NWE1/$NME1 table 201
    ip rule add prio 201 from $NWE1/$NME1 table 201
    ip route add default via $GWE1 dev $IFE1 src $IPE1 proto static table 201
    ip route append prohibit default table 201 metric 1 proto static

    ip rule del from $NWE2/$NME2 table 202
    ip rule add prio 202 from $NWE2/$NME2 table 202
    ip route add default via $GWE2 dev $IFE2 src $IPE2 proto static table 202
    ip route append prohibit default table 202 metric 1 proto static

    ip rule del table 222
    ip rule add prio 222 table 222
    ip route add default table 222 proto static \
           nexthop via $GWE1 dev $IFE1 \
           nexthop via $GWE2 dev $IFE2

    Это позволяет мне иметь шлюз по умолчанию, и трафик примерно равномерно распределяется по обеим связям. Общая проблема, с которой я сталкиваюсь, заключается в том, что при использовании решения балансировки нагрузки на Wiki (http://wiki.mikrotik.com/wiki/Load_Balancing) у меня появляется три(3) маршрута по умолчанию. Последний маршрут по умолчанию предназначен для самого маршрутизатора и будет пересылать пакеты только через одну Интернет-связь, а не через обе для трафика, инициированного с маршрутизатора. Итак, задача, с которой я столкнулся, заключается в том, что в моем решении Debian GNU/Linux весь трафик, будь то инициированный с маршрутизатора или проходящий через маршрутизатор, распределяется по нескольким каналам. Как я могу добиться того же в MikroTik OS?
     
     
     
    Diatheke
    Guest
    #6
    0
    13.12.2006 00:28:00
    О, я подумал добавить, что я пытался добавить третий маршрут по умолчанию (для самого роутера MikroTik) с помощью ECMP, примерно так: set <третий маршрут по умолчанию> gateway=[шлюз wan 1],[шлюз wan 2]. Однако, такое решение выводит трафик из роутера, но, похоже, не работает с dst-nat. В моем примере с RDP (3389) при использовании dst-nat выяснилось, что dst-nat работает только с интерфейсом, связанным с третьим маршрутом по умолчанию. Если я сделаю третий маршрут по умолчанию равным по стоимости через оба шлюза, то смогу балансировать исходящий трафик, генерируемый роутером, но тогда dst-nat перестает работать, и всё становится немного непредсказуемым. Например, я могу подключиться по SSH только к одному из моих шлюзов wan, но не к другому.
     
     
     
    Diatheke
    Guest
    #7
    0
    14.12.2006 13:40:00
    Это вообще возможно реализовать в ROS? Чтобы трафик, идущий в ROS, помечался и направлялся обратно на тот же интерфейс. Трафик, который выходит (egress), нужно примерно равномерно распределять между WAN-шлюзами. Я думаю, большинство проблем, с которыми сталкиваются люди, — это просто ошибки в настройках. Я никак не могу понять, как это сделать с ROS.
     
     
     
    colony1online
    Guest
    #8
    0
    05.07.2007 21:53:00
    Решили ли вы когда-нибудь эту проблему? У нас та же самая ситуация. Множественные соединения, исходящее распределение нагрузки работает как положено. Однако входящие соединения (даже простые пинги) не работают, потому что они приходят по одному соединению, а затем отправляются обратно по другому, и выглядят как поддельные.
     
     
     
    janisk
    Guest
    #9
    0
    06.07.2007 08:07:00
    Отмечай связи во входной цепочке, чтобы ты знал, откуда они возникли. Затем в выходных пакетах отмечай эти связи меткой маршрутизации (routing-mark), чтобы они выходили через нужный тебе шлюз. В IP-маршрутах добавь 3 шлюза: первый шлюз принимает помеченные пакеты с routing-mark, возникшие с этого интерфейса; второй — делает то же самое с другими помеченными маршрутами; третий — шлюз по умолчанию. Самый простой способ проверить — настроить это для ICMP. Вот схема потока пакетов в RouterOS: http://www.mikrotik.com/testdocs/ros/2.9/ip/flow.php
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры