Отказоустойчивая сеть: практическое руководство по настройке VRRP/HSRP и OSPF для высокой доступности | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Отказоустойчивая сеть: практическое руководство по настройке VRRP/HSRP и OSPF для высокой доступности

15 мая 2026 7 мин. чтения

Архитектура отказоустойчивой сети: как VRRP/HSRP и OSPF работают вместе

Отказоустойчивая сеть требует резервирования на двух уровнях. Первый уровень - шлюз по умолчанию для клиентов. Протоколы VRRP или HSRP создают виртуальный IP-адрес, который обслуживается одним из физических маршрутизаторов. При его сбое другой маршрутизатор мгновенно принимает роль активного. Второй уровень - маршрутизация внутри сети. OSPF динамически вычисляет оптимальные пути между всеми узлами. При отказе маршрутизатора OSPF перестроит таблицы маршрутизации для всего трафика.

Взаимодействие выглядит так. Клиенты используют виртуальный IP-адрес как шлюз. Активный маршрутизатор отвечает на их запросы. Внутри сети маршрутизаторы обмениваются информацией о состоянии каналов через OSPF. При сбое активного маршрутизатора резервный становится активным для клиентов в течение миллисекунд. Затем он отправляет в сеть OSPF сообщение об изменении состояния своего интерфейса. Все маршрутизаторы в сети получают это сообщение и пересчитывают маршруты, направляя трафик через новый активный маршрутизатор.

Схема и описание тестового стенда для примеров настройки

Все примеры конфигураций проверены на следующей топологии. Она типична для офисного сегмента или периметра небольшого ЦОД.

Сеть клиентов: 10.0.0.0/24.
Виртуальный IP-адрес шлюза (VIP): 10.0.0.1.
Маршрутизатор R1 (основной): физический интерфейс GigabitEthernet0/0 с IP 10.0.0.2.
Маршрутизатор R2 (резервный): физический интерфейс GigabitEthernet0/0 с IP 10.0.0.3.
Сеть между маршрутизаторами для OSPF: 192.168.1.0/30 (интерфейсы GigabitEthernet0/1).
OSPF Area 0 включает все интерфейсы маршрутизаторов.

Эта схема позволяет проверить резервирование шлюза для клиентов и перестроение маршрутов между маршрутизаторами. Настройки для Cisco IOS и Linux с Keepalived/FRR приведены для идентичной логической архитектуры.

Готовые конфигурации для Cisco IOS: HSRP и OSPF

Конфигурации ниже можно скопировать, подставить свои IP-адреса и применять на оборудовании Cisco с IOS. Они обеспечивают резервирование шлюза через HSRP и динамическую маршрутизацию через OSPF.

Конфигурация маршрутизатора R1 (Active для HSRP)

! Базовая настройка интерфейса для клиентов
interface GigabitEthernet0/0
 description Client Network
 ip address 10.0.0.2 255.255.255.0
 no shutdown
! Настройка HSRP группы 1
 standby 1 ip 10.0.0.1
 standby 1 priority 110
 standby 1 preempt
 standby 1 timers 1 3
 standby 1 name HSRP-CLIENT-VLAN
! Интерфейс для связи с R2 (OSPF)
interface GigabitEthernet0/1
 description Link to R2
 ip address 192.168.1.1 255.255.255.252
 no shutdown
! Настройка OSPF процесс 1
router ospf 1
 router-id 10.0.0.2
 network 10.0.0.2 0.0.0.0 area 0
 network 192.168.1.1 0.0.0.0 area 0

Комментарии. Команда standby 1 priority 110 задает высокий приоритет для R1, чтобы он стал активным. standby 1 preempt позволяет маршрутизатору вернуть роль активного при восстановлении. Таймеры standby 1 timers 1 3 задают отправку hello-пакетов каждую секунду и ожидание ответа 3 секунды. В OSPF router-id уникально идентифицирует маршрутизатор в сети.

Конфигурация маршрутизатора R2 (Standby для HSRP)

! Базовая настройка интерфейса для клиентов
interface GigabitEthernet0/0
 description Client Network
 ip address 10.0.0.3 255.255.255.0
 no shutdown
! Настройка HSRP группы 1
 standby 1 ip 10.0.0.1
 standby 1 priority 90
 standby 1 preempt
 standby 1 timers 1 3
 standby 1 name HSRP-CLIENT-VLAN
! Интерфейс для связи с R1 (OSPF)
interface GigabitEthernet0/1
 description Link to R1
 ip address 192.168.1.2 255.255.255.252
 no shutdown
! Настройка OSPF процесс 1
router ospf 1
 router-id 10.0.0.3
 network 10.0.0.3 0.0.0.0 area 0
 network 192.168.1.2 0.0.0.0 area 0

Конфигурация OSPF идентична на обоих маршрутизаторах. Это гарантирует установление соседства и корректный обмен маршрутами. Приоритет HSRP на R2 ниже (90), поэтому он остается резервным.

После настройки проверьте состояние.

Команда show standby brief покажет состояние группы HSRP. Активный маршрутизатор будет в состоянии Active, резервный - Standby.
Команда show ip ospf neighbor покажет соседа OSPF с состоянием FULL.

Для более детальной диагностики динамической маршрутизации можно использовать руководство по диагностике и мониторингу OSPF и BGP. В нем описаны конкретные команды для анализа логов и состояния протоколов.

Готовые конфигурации для Linux (Keepalived + FRR): VRRP и OSPF

Это решение для бюджетных проектов или виртуальной инфраструктуры. Keepalived реализует VRRP, FRRouting обеспечивает динамическую маршрутизацию OSPF.

Файл конфигурации Keepalived для ноды MASTER

global_defs {
    router_id LVS_MASTER
}
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 150
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass secret_password
    }
    virtual_ipaddress {
        10.0.0.1/24
    }
    track_interface {
        eth0
    }
}

Директива state MASTER указывает начальное состояние. Keepalived сам определяет активную ноду по приоритету. virtual_router_id должен совпадать на всех узлах группы. advert_int 1 задает интервал отправки VRRP сообщений в секунду. Блок authentication добавляет простую парольную защиту для предотвращения ложных объявлений.

Конфигурация FRRouting для OSPF (файл /etc/frr/frr.conf):

frr version 8.5.2
frr defaults traditional
hostname linux-router
log syslog informational
service integrated-vtysh-config
!
router ospf
 ospf router-id 10.0.0.2
 network 10.0.0.0/24 area 0
 network 192.168.1.0/30 area 0
!
line vty

На резервной ноде (R2) конфигурация Keepalived отличается только приоритетом (priority 100) и начальным состоянием (state BACKUP). Конфигурация FRR идентична, кроме router-id (10.0.0.3).

После настройки запустите службы:

systemctl enable keepalived frr
systemctl start keepalived frr

Для проверки используйте команды:
ip addr show eth0 - виртуальный IP должен быть назначен на активной ноде.
vtysh -c "show ip ospf neighbor" - проверка соседства OSPF.

Тонкая настройка: таймеры, приоритеты и диагностика сбоев

Базовые настройки обеспечивают работу. Для критичных сервисов нужна оптимизация параметров для сокращения времени восстановления и повышения стабильности.

Как настроить время переключения (failover) менее 1 секунды

Сократите таймеры протоколов. Это увеличивает нагрузку на оборудование и требует стабильной линковой среды.

Для VRRP в Keepalived:
advert_int 0.2 - отправка сообщений каждые 200 миллисекунд.
Для HSRP в Cisco:
standby 1 timers msec 200 msec 600 - hello каждые 200ms, hold timer 600ms.

Для OSPF используйте быстрые hello.
В Cisco IOS:
interface GigabitEthernet0/1
ip ospf hello-interval 100
ip ospf dead-interval 400

В FRRouting:
interface eth1
ip ospf hello-interval 100
ip ospf dead-interval 400

Такие настройки сокращают время обнаружения сбоя до сотен миллисекунд. Используйте их только в пределах одного стойка или ЦОД с низкой латентностью. В сетях с нестабильными линками они могут вызвать флаппинг.

Команды для проверки работоспособности схемы

Следующие команды позволяют быстро проверить состояние системы после настройки или при возникновении проблемы.

Задача Команда на Cisco Команда на Linux
Проверить состояние VRRP/HSRP группы show standby brief ip addr show (для виртуального IP)
journalctl -u keepalived
Убедиться в установлении соседства OSPF show ip ospf neighbor vtysh -c "show ip ospf neighbor"
Посмотреть итоговую таблицу маршрутизации show ip route vtysh -c "show ip route" или ip route show
Проверить детали OSPF интерфейса show ip ospf interface vtysh -c "show ip ospf interface"

В штатном режиме вывод show standby brief покажет активный маршрутизатор с приоритетом 110 и резервный с приоритетом 90. Вывод show ip ospf neighbor должен показывать соседа в состоянии FULL.

Для понимания принципов работы OSPF и оптимизации его параметров в корпоративных сетях полезно ознакомиться с детальным руководством по настройке OSPF. В нем описаны настройки областей, DR/BDR и агрегации маршрутов.

Cisco HSRP vs Linux VRRP: сравнение и рекомендации по выбору

Выбор технологии зависит от бюджета, среды и требуемой функциональности.

Критерий Cisco HSRP Linux VRRP (Keepalived)
Стоимость Проприетарная технология, требует оборудования Cisco и, часто, лицензий. Бесплатное ПО, работает на любом сервере или виртуальной машине.
Функциональность Расширенные возможности отслеживания интерфейсов и объектов (tracking), интеграция с другими функциями Cisco. Базовый VRRP по стандарту RFC 5798. Keepalived добавляет гибкие скрипты проверки здоровья (check scripts) для сложных сценариев.
Экосистема и поддержка Централизованное управление через Cisco IOS, поддержка от вендора. Открытый код, управление через конфигурационные файлы и системные службы. Поддержка сообщества.
Гибкость Ограничена возможностями IOS и модельным рядом оборудования. Высокая. Скрипты проверки здоровья могут учитывать состояние любого сервиса (HTTP, база данных).
Сценарии использования Гомогенные среды Cisco, корпоративные сети с централизованным управлением, где требуется максимальная интеграция. Гибридные среды, виртуальная инфраструктура (KVM, ESXi), edge-решения, бюджетные проекты, whitebox оборудование.

HSRP - решение для сред, построенных полностью на Cisco. VRRP на Keepalived подходит для смешанных инфраструктур или проектов с ограниченным бюджетом. Если вы планируете переход со статической маршрутизации на динамическую, полезно оценить общие риски и стратегии миграции в практическом сравнении протоколов маршрутизации.

Для управления и интеграции подобных сетевых сервисов в Linux-окружении базовые навыки администрирования можно получить из практического руководства по Linux.

Поделиться:
Сохранить гайд? В закладки браузера