LINUX.ORG.RU
ФорумAdmin

Помогите с резервированием аплинков через OSPF.

 , ,


0

1

Ситуация. На площадке 2 роутера(Mikrotik, если это важно). Путь будет Master и Slave. Роутеры используют разных провайдеров. Локальные интерфейсы в одной сети(воткнуты в свитч). На роутерах поднят OSPF протокол для маршрутизации между другими площадками. Все работает. Но, необходимо сделать резервирование интернет канала следующим образом.

Когда с Master недоступен, какой-то внешний хост, Master должен перенаправлять трафик на Slave. Т. е. шлюз по умолчанию у пользователей не меняется.

Гуглил, так ничего и не нагуглил. В основном однотипные статьи, как связать филиалы через туннели и маршрутизировать через OSPF. Но, так я и сам умею)

Или, может есть, какое-то более грамотное решение?

Локальные интерфейсы в одной сети(воткнуты в свитч).

Я правильно понимаю что у тебя оба роутера являются def. route для локалки с одинаковым ip адресом? Не надо так. Выше про VRRP правильно подсказывают.

Когда с Master недоступен, какой-то внешний хост, Master должен перенаправлять трафик на Slave. Т. е. шлюз по умолчанию у пользователей не меняется.

«Внешний» имеется в виду на других площадках или в диком интернете? Если первое то ospf при отвале vpn канала сам должен перестроиться через slave, если второе то в определенных ситуациях можно попробовать через костыли и подпорки (добавляешь отдельную таблицу роутинга с wan через slave, потом в iptables как-то отлавливаешь попытки обращения к ресурсам от которых не было ответа через wan master'а, адреса ресурсов в assress list и этот address list роутить через таблицу wan over slave), но не факт что оно стабильно работать будет.

Или, может есть, какое-то более грамотное решение?

Может задачу опишешь более развернуто или другими словами,мне кажется я не понял что ты хочешь.

Kolins ★★★★★
()
Ответ на: комментарий от BOOBLIK

Не правильно. VRRP объединяет роутеры в виртуальный. Это, тоже настроено. Но, есть проблема, переключение на Backup происходит только, когда Master становится недоступен. Т. е. не шлет сообщения на мультикаст 224.0.0.18

А если упал аплинк, переключение не происходит и все сидят и курят).

Как понятнее объяснить я не не знаю. Есть два роутера, необходимо при недоступности маршрута(упал аплинк), задействовать второй роутер. Т. е. маршрутизировать трафик. Пользователь -> Master -> Slave -> Internet.

AndrK189100
() автор топика
Ответ на: комментарий от AndrK189100

Есть два роутера, необходимо при недоступности маршрута(упал аплинк), задействовать второй роутер. Т. е. маршрутизировать трафик. Пользователь -> Master -> Slave -> Internet.

Внутренняя сеть (osfp) сама перестроится, если роутеры по ospf соседями являются (но думаю что у тебя так).
Для внешней сети, настраиваешь маршрут с большей метрикой через slave, маршрут до основного провайдера делаешь через рекурсивный маршрут и ping проверку (например тут почитай).

Kolins ★★★★★
()
Последнее исправление: Kolins (всего исправлений: 1)
Ответ на: комментарий от AndrK189100

Но, есть проблема, переключение на Backup происходит только, когда Master становится недоступен.

Это не проблема, а штатное поведение. С чего будет переключаться на резервный роутер, если основной в порядке? «А я что? Я ничего! Это провайдера не слышно».

необходимо при недоступности маршрута(упал аплинк), задействовать второй роутер. Т. е. маршрутизировать трафик. Пользователь -> Master -> Slave -> Internet.

/ip firewall mangle add action=route chain=prerouting route-dst=<slave-gw-ip> disabled=yes

По нужным тебе критериям. Хоть безусловно (почти), хоть по адресам добавляй в список таргетов тех, до кого через основного ISP не получилось достучаться.

PS если не хочешь завязываться на доступность конкретного чужого сервиса в интернете, вместо check-gateway лучше скриптом несколько разных серверов регулярно пингуй и меняй настройки как надо.

mogwai ★★★★★
()
Ответ на: комментарий от mogwai

Как раз от подобного и хотелось уйти…

Пошел, другим путем. Netwatch теребит внешний хост и если он недоступен, тупо меняет VRRP priority Master роутера. Происходит переключение на резервный… Ну и обратно по доступности хоста)

AndrK189100
() автор топика
Ответ на: комментарий от mogwai

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

Т. е. если добавить шаблон WAN-1 0.0.0.0/0, на соседях маршрут 0.0.0.0/0 LAN-1 не появится.

AndrK189100
() автор топика
Ответ на: комментарий от mogwai

PS если не хочешь завязываться на доступность конкретного чужого сервиса в интернете, вместо check-gateway лучше скриптом несколько разных серверов регулярно пингуй и меняй настройки как надо.

+1

anc ★★★★★
()
Ответ на: комментарий от AndrK189100

Netwatch теребит внешний хост и если он недоступен, тупо меняет VRRP priority Master роутера.

Один хост не показатель, может лежать сам хост, может что-то по дороге лежать... Выше mogwai вам правильно написал "несколько разных серверов", докину от себя «расположенных в разных местах».

anc ★★★★★
()