22. Служба vrrp¶
Служба vrrp предназначена для применения протокола VRRP в ПАК “Фортикс”. VRRP (Virtual Router Redundancy Protocol) — сетевой протокол, предназначенный для обеспечения отказоустойчивости маршрутизаторов, которая обеспечивается путём объединения нескольких маршрутизаторов в одну группу, обслуживающую общие виртуальные IP-адреса. Объединение нескольких ПАК “Фортикс” называется кластером, внутри кластера каждый ПАК “Фортикс” называется нодой. На каждой ноде настраиваются экземпляры службы vrrp, позволяющие отнести ноду к некоторому кластеру.
22.1. Базовая настройка¶
Настройка службы vrrp осуществляется на следующем уровне конфигурации:
[edit service vrrp]
Для заупска службы VRRP применяется команда:
[edit service vrrp]
# set enable
Для функционирования службы vrrp необходимо создание хотя бы одного экземпляра (instance). Для создания экземпляра применяется команда:
[edit service vrrp]
# set instance <instance-name>
где <instance-name> – слово.
Настройка экземпляров осуществляется на следующем уровне конфигурации:
[edit service vrrp instance <instance-name>]
где <instance-name> – слово.
На данном уровне конфигурации доступны следующие обязательные настройки:
router-id <router-id>– задать идентификатор экземпляра, где<router-id>– число от 1 до 255 (на каждой ноде одного кластера настраиваются экземпляры с одинаковыми идентификаторами);state master|backup– задать первоначальную роль (состояние) ноды (одна нода кластера настраивается какmaster, остальные –backup);interface <interface-name>– указать имя первичного интерфейса, используемого для VRRP-оповещений, где<interface-name>– имя существующего интерфейса.
На данном уровне конфигурации доступны следующие дополнительные настройки:
ipv4– перейти на уровень конфигурации IPv4 для настройки виртуальных IP-адресов;ipv6– перейти на уровень конфигурации IPv6 для настройки виртуальных IP-адресов;adv-interval <adv-interval-value>– указать интервал времени, с которым осуществляются VRRP-оповещения, где<adv-interval-value>– число секунд от 0.00 до 3600.00;auth <password>– задать пароль для аутентификации, где<password>– строка;garp– перейти на уровень конфигурации и настроить Gratuitous ARP-оповещений для перехода в состояниеmaster;no-preempt– отключить перехват состояния у ноды с более низким приоритетом;no-track-primary– отключить отслеживание состояния первичного интерфейса;preempt-delay <preempt-delay-value>– задать задержку для перехвата состояния, где<preempt-delay-value>– число секунд от 0 до 3600;priority <priority-value>– задать приоритет ноды в кластере, где<priority-value>– число от 0 до 255 (чем больше число, тем выше приоритет);src-ip <address>– задать IP-адрес источника для мультикаст-пакетов, где<address>– IPv4-адрес в форматеA.B.C.Dили IPv6-адрес в форматеA:B:..:H;track– перейти на уровень конфигурации параметров отслеживания состояния интерфейса;unicast– перейти на уровень конфигурации параметров unicast-оповещений, используемых вместо multicast-оповещений;vmac– включить режим подмены MAC-адреса.
Пример обязательной настройки экземпляра для основной ноды:
[edit service vrrp]
# set instance main router-id 1 state master interface en0
Пример обязательной настройки экземпляра для резервной ноды:
[edit service vrrp]
# set instance main router-id 1 state backup interface en0
При наличии хотя бы двух нод с настроенными на них экземплярами, кластер может функционировать в режиме основной/резервный.
Если нода кластера с ролью backup перестаёт получать сообщения от ноды с ролью master, она принимает на себя роль master и начинает поддерживать настроенные виртуальные IP-адреса. Если первичный интерфейс или интерфейс, настроенный на уровне конфигурации track, переходит в выключенное состояние, нода не может исполнять роль master.
22.2. Настройка виртуальных IP-адресов¶
У экземпляра может быть несколько виртуальных IPv4- или IPv6-адресов.
Для настройки виртуальных IP-адресов применяется команда:
[edit service vrrp instance <instance-name> ipv4|ipv6]
# set address <address> interface <interface-name>
где
<instance-name>– имя существующего экземпляра;ipv4|ipv6– уровень конфигурации IPv4/IPv6;<address>– IPv4-адрес в форматеA.B.C.D/Mили IPv6-адрес в форматеA:B:..:H/Mв зависимости от уровня конфигурации;<interface-name>– имя существующего интерфейса.
Если в команде указан несуществующий интерфейс, виртуальный IP-адрес устанавливается на первичный интерфейс.
Для включения режима подмены MAC-адреса применяется команда:
[edit service vrrp instance <instance-name> ipv4|ipv6]
# set address <address> vmac
где
<instance-name>– имя существующего экземпляра;ipv4|ipv6– уровень конфигурации IPv4/IPv6;<address>– IPv4-адрес в форматеA.B.C.D/Mили IPv6-адрес в форматеA:B:..:H/Mв зависимости от уровня конфигурации.
Для отключения смены роли экземпляра при отказе интерфейса с виртуальным IP-адресом применяется команда:
[edit service vrrp instance <instance-name> ipv4|ipv6]
# set address <address> no-track
где
<instance-name>– имя существующего экземпляра;ipv4|ipv6– уровень конфигурации IPv4/IPv6;<address>– IPv4-адрес в форматеA.B.C.D/Mили IPv6-адрес в форматеA:B:..:H/Mв зависимости от уровня конфигурации.
Для указания broadcast-адреса для виртуального IPv4-адреса применяется команда:
[edit service vrrp instance <instance-name> ipv4]
# set address <address> brd <brd-address>
где
<instance-name>– имя существующего экземпляра;<address>– IPv4-адрес в форматеA.B.C.D/M;<brd-address>– broadcast-адрес в форматеA.B.C.D.
Для отключения режима обнаружения повторяющихся адресов для виртуального IPv6-адреса применяется команда:
[edit service vrrp instance <instance-name> ipv6]
# set address <address> no-dad
где
<instance-name>– имя существующего экземпляра;<address>– IPv6-адрес в форматеA:B:..:H/M.
22.3. Группы синхронизации¶
Для объединения нескольких экземпляров в общую группу на одной ноде применяется команда:
[edit service vrrp]
# set group <group-name> instance <instance-name-1> instance <instance-name-2>
где
<group-name>– имя слово;<instance-name-1>– имя существующего экземпляра;<instance-name-2>– имя существующего экземпляра.
При изменении состояния любого экземпляра в группе, состояние остальных экземпляров в группе также изменяется.
22.4. Настройка режима отслеживания¶
Служба VRRP может отслеживать состояния сетевых интерфейсов и, в зависимости от него, изменять приоритет экземпляра или группы на указанное значение.
Настройка параметров отслеживания состояния интерфейсов для экземпляра осуществляется на следующем уровне конфигурации:
[edit service vrrp instance <instance-name> track]
где <instance-name> – имя существующего экземпляра.
Для настройки отслеживания состояния интерфейса применяется команда:
[edit service vrrp instance <instance-name> track]
# set interface <interface-name> [weight <weight-value>] [reverse]
где
<instance-name>– имя существующего экземпляра;<interface-name>– имя существующего интерфейса;<weight-value>– значение приоритета от -253 до 253;reverse– увеличение приоритета для неработающего интерфейса.
Настройка параметров отслеживания состояния интерфейсов для группы осуществляется на следующем уровне конфигурации:
[edit service vrrp group <group-name> track]
где <group-name> – имя существующей группы.
Настройки данного уровня конфигурации аналогичны настройкам уровня конфигурации отслеживания для экземпляра.
22.5. Диагностика¶
Для просмотра статистики службы vrrp применяется команда:
> show service vrrp stat
Для просмотра журнала службы vrrp применяется команда:
> show journal service vrrp