В данной статье мы поговорим о сетевом протоколе VRRP, для чего он необходим и как его настроить в MikroTik RouterOS.
VRRP – это сетевой протокол, предназначенный для увеличения доступности маршрутизаторов, выполняющих роль шлюза по умолчанию
Отказоустойчивость в данном случае достигается путем объединения группы маршрутизаторов в один виртуальный маршрутизатор и назначения им общего ip-адреса, который и будет использоваться как шлюз по умолчанию для компьютеров в сети.
Дело в том, что если шлюз на оконечных устройствах является одиночным ip-адресом, то в случае выхода его из строя получается полностью неработоспособная сеть и это естественно плохо, потому что потребуется какое-то время для обновления параметров шлюзов на оконечных устройствах. Так же есть вторая проблема, которая связана с тем, что если шлюз задан на конечном устройстве статикой, то есть на компьютере просто прописан статический ip-адрес, то в момент выхода шлюза из строя придется пройти по всем компьютерам и вручную поменять шлюз.
Чтобы этого избежать используют протокол VRRP, который начинает защищать ip-адрес шлюза и перемещать его между двумя устройствами, то есть делать некую отказоустойчивость.
Для работы понадобятся два роутера, которые будут выполнять роль одного шлюза, естественно на этих роутерах должен быть интернет, должен быть DHCP, эти роутеры должны быть видны в локальной сети.
Для начала надо проверить роутеры.
Например, есть роутер 192.168.88.1, он доступен, но в данный момент это единственное устройство, которое есть в локальной сети.
Также есть второй роутер, у которого адрес 192.168.88.2, он также доступен, но сейчас, в случае выхода из строя основного роутера, придется менять ip-адрес, что естественно займет достаточно много времени.
Два роутера есть, интернет на них есть, поэтому мы можем приступить к настройке протокола VRRP.
Есть два устройства, первое устройство slave и второе устройство master.
/ip address set [find interface=bridge] address=192.168.88.3/24
ping 192.168.88.3
192.168.88.3 доступен, 192.168.88.1 естественно недоступен, потому что его будем использовать в локальной сети как адрес, который будет перемещаться между двумя роутерами.
Указываем VRID, то есть id VRRP интерфейса.
Указываем Version, можно выбрать версию 2, которая позволяет использовать аутентификацию между устройствами, чтобы никто не мог вмешаться в работу сети.
Указываем Password.
/interface vrrp add name=vrrp1-88 interface=bridge1 vrid=1 version=2 password=password123
Адрес будет являться адресом нашего шлюза.
/ip address add address=192.168.88.1/24 interface=vrrp1-88
Для этого мы указываем:Interface: bridge;
VRID: оставляем без изменений;
Version: 2, чтобы локальной сети никто не повредил;
Password.
Ждем какое-то время и видим, что на резервном роутере поднялся VRRP интерфейс, но он в состоянии Backup, то есть в данный момент он не активен.
Для этого в IP DHCP Server мы указываем вместо интерфейса bridge интерфейс vrrp1-88.
/ip dhcp-server set interface=vrrp1-88 numbers=0
И на основном роутере также переводим DHCP на VRRP интерфейс.
Все работает, пока не случился отказ.
/interface vrrp set priority=200 numbers=0
Настройка завершена, далее необходимо протестировать работу протокола.
Итак, протестируем, 192.168.88.1 доступен, все работает хорошо.
Для проверки работы отключаем связь между основным и резервным роутерами.
Смотрим на Ping. У нас потерялось 4 Ping, но после этого Ping обратно возобновился.
Посмотрим, что произошло на резервном роутере.
На резервном роутере VRRP интерфейс стал активен и сейчас работа происходит через него.
С основным роутером сейчас связи нет, и поэтому мы не знаем, что с ним происходит.
Возвращаем основной роутер в сеть и смотрим, что сеть опять работает через него. На основном роутере появился флаг Running Master, а на резервном роутере флаг стал Backup. Таким образом, мы вернулись обратно.
С версией RouterOS7 появилась возможность синхронизации Connection Tracking между двумя роутерами. Это позволит сайтам продолжат работать на том месте, на котором остановились, когда произошла проблема.
Но единственный момент, что опция синхронизации Connection Tracking не совместима с Preemption Mode, то есть несовместима с ситуацией, когда основной роутер возвращается в сеть. Поэтому опцию Preemption Mode необходимо отключить.
После этого указывается удаленный адрес другого устройства, с которым мы будем синхронизировать Connection Tracking.
На этом настройка и проверка работы протокола VRRP закончена.
С вами скоро свяжутся