Две изолированные сети на одном устройстве

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

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

Есть Mikrotik rb4011, 2 wan, ip динамические от провайдеров, 2 lan.
Пока хочу настроить так, чтобы 1lan ходил только в 1wan и 2lan во 2 wan. Если wan1 упадет, то lan1 не должен выходить в интернет через wan2.
Что пока нашел и сделал:
Прочитал про маркировку трафика, в mangle промаркировал маршруты (mark routing). Добавил статические маршруты для маркированного трафика, вроде работает.
Проблема в том, что IP от провайдера динамические и могут меняться. Указать просто интерфейс в качестве шлюза нельзя, точнее просто не работает тогда.

Вопрос в том, как можно решить данную проблему?
Как я понял, надо со скриптами разбираться и получать IP адреса шлюзов и устанавливать их в статические маршруты?
Может есть какой-то путь проще?


KaNelam
Сообщения: 620
Зарегистрирован: 11 июл 2017, 13:03

elisei85 писал(а): 18 июн 2022, 21:16 Есть Mikrotik rb4011, 2 wan, ip динамические от провайдеров, 2 lan.
Пока хочу настроить так, чтобы 1lan ходил только в 1wan и 2lan во 2 wan. Если wan1 упадет, то lan1 не должен выходить в интернет через wan2.
Что пока нашел и сделал:
Прочитал про маркировку трафика, в mangle промаркировал маршруты (mark routing). Добавил статические маршруты для маркированного трафика, вроде работает.
Проблема в том, что IP от провайдера динамические и могут меняться. Указать просто интерфейс в качестве шлюза нельзя, точнее просто не работает тогда.

Вопрос в том, как можно решить данную проблему?
Как я понял, надо со скриптами разбираться и получать IP адреса шлюзов и устанавливать их в статические маршруты?
Может есть какой-то путь проще?
1. с манглом разобраться до конца
2. содать 2 таблицы маршрутизации для подсетей и через роут рул запретить ходение "не тех не туда"
3. 2 ната


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

elisei85 писал(а): 18 июн 2022, 21:16Как я понял, надо со скриптами разбираться и получать IP адреса шлюзов и устанавливать их в статические маршруты?
Может есть какой-то путь проще?
Правильно, в DHCP-клиентов добавляете скрипты, которые подновляют статические записи.
Куда уж проще то?


Telegram: @thexvo
elisei85
Сообщения: 2
Зарегистрирован: 17 июн 2022, 20:56

Я, можно сказать, чайник, второй вариант как-то для меня более понятнее стал.
И так оказалось, на оф. сайте скриптов Микротика в разделе DHCP самый первый скрипт как раз для меня, вроде работает как надо, буду тестить.
Всем спасибо.

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

{
    :local rmark "lan2_to_wan2_route"
    :local count [/ip route print count-only where comment="WAN2"]
    :if ($bound=1) do={
        :if ($count = 0) do={
            /ip route add gateway=$"gateway-address" comment="WAN2" routing-mark=$rmark
        } else={
            :if ($count = 1) do={
                :local test [/ip route find where comment="WAN2"]
                :if ([/ip route get $test gateway] != $"gateway-address") do={
                    /ip route set $test gateway=$"gateway-address"
                }
            } else={
                :error "Multiple routes found"
            }
        }
    } else={
        /ip route remove [find comment="WAN2"]
    }
}


Ответить