Возникла задача организовать стабильную связь между двумя филиалами. Сейчас канал между серверами филиалов собран на MS ISA 2006. Надо переходить на OpenSource. Требуется максимально отказоустойчивое соединение с филиалами, т.к. вся основная работа идет в терминальном сервере 1С предприятие.
Погуглив, я пришел к такому решению:
- серверы (шлюзы) на Linuxe (Debian/Ubuntu или Suse), т.к. есть пакет iproute2
- к каждому серверу подключено 2 интернет-провайдера
- канал между филиалами через OpenVPN
- iproute2 позволяет настроить маршрутизацию таким образом:
если пакет приходит на интерфейс резервного провайдера, который не является шлюзом по умолчанию, то ответ идет через этот же интерфейс. Это является большим плюсом для соединения удаленных филиалов к головному офису.Недостаток, который виден в данном решении, что система обладает большой инерционностью:
если случилась проблема с каналом связи основного провайдера на сервере в головном офисе, то клиенты это понимают и пытаются переподключиться к тому же IP-адресу сервера, если попытка неудачна, то они используют IP-адрес резервного провайдера головного офиса. На эти переключения уйдет примерно от 1 до 5 минут.
Можно ли как-то сделать связь между филиалами так же, как и протокол RSTP (rapid spanning tree protocol) у Cisco?
Например, филиал подключается к головному офису 4 линками:
1. с основного IP филиала до основного IP центрального офиса
2. с основного IP филиала до резервного IP центрального офиса
3. с резервного IP филиала до основного IP центрального офиса
4. с резервного IP филиала до резервного IP центрального офиса
1 линк остается активным, а остальные переводятся в режим ожидания. Если что-то случается с линком №1, то линк 2 становится активным, а линк 1 переводится в режим ожидания и пытается настроиться. Когда связь восстановиться, то линк 1 станет активным, а линк 2 уйдет в резерв.
может есть какие-то решения, позволяющие так делать?