Протокол маршрутизатора с горячим резервированием (HSRP) и протокол резервирования виртуального маршрутизатора (VRRP): различия между версиями
Vix (обсуждение | вклад) Нет описания правки |
Vix (обсуждение | вклад) Нет описания правки |
||
Строка 22: | Строка 22: | ||
* '''Важно.''' При настройке '''VRRP''', в качестве адреса для виртуального '''IP''' не используется реальный адрес сервера, так как, в случае сбоя, его адрес переместится на соседний, и при восстановлении, он окажется изолированным от сети. Дело в том, чтобы вернуть свой адрес, нужно отправить в сеть '''VRRP''' пакет, но не будет '''IP''' адреса, с которого это возможно сделать. | * '''Важно.''' При настройке '''VRRP''', в качестве адреса для виртуального '''IP''' не используется реальный адрес сервера, так как, в случае сбоя, его адрес переместится на соседний, и при восстановлении, он окажется изолированным от сети. Дело в том, чтобы вернуть свой адрес, нужно отправить в сеть '''VRRP''' пакет, но не будет '''IP''' адреса, с которого это возможно сделать. | ||
* Установка и настройка | |||
Установить пакет keepalived нужно на обоих серверах, командой: | |||
apt-get install keepalived | |||
После завершения установки на обоих серверах правим конфигурационный файл | |||
nano /etc/keepalived/keepalived.conf | |||
Разберем опции более подробно: | |||
* vrrp_instance <название> — секция, определяющая экземпляр VRRP; | |||
* state <MASTER|BACKUP> — начальное состояние при запуске; | |||
* interface <название интефейса> — интерфейс, на котором будет работать VRRP; | |||
* virtual_router_id <число от 0 до 255> — уникальный идентификатор VRRP экземпляра, должен совпадать на всех серверах; | |||
* priority <число от 0 до 255> — задает приоритет при выборе MASTER, сервер с большим приоритетом становится MASTER; | |||
* virtual_ipaddress — блок виртуальных IP адресов, которые будут активны на сервере в состоянии MASTER. Должны совпадать на всех серверах внутри VRRP экземпляра. | |||
* Таким образом, при штатной работе, сервер SRV1 будет MASTER для виртуального IP 91.142.82.222 | |||
Если на сервере активирован файрвол, то нужно добавить разрешающие правила для multicast трафика и vrrp протокола с помощью iptables: | |||
Для SRV1: | |||
iptables -I INPUT -p vrrp -j ACCEPT | |||
iptables -I OUTPUT -p vrrp -j ACCEPT | |||
Для SRV2: | |||
iptables -I INPUT -p vrrp -j ACCEPT | |||
iptables -I OUTPUT -p vrrp -j ACCEPT | |||
Активируем автозагрузки и запустим службу keepalived на обоих серверах: | |||
sudo /etc/init.d/keepalived start | |||
После запуска службы keepalived, виртуальные IP будут присвоены интерфейсам из конфигурационного файла. Посмотрим текущие IP адреса на интерфейсе eth1 серверов: | |||
SRV1: | |||
SRV2: | |||
Проверим работоспособность настроенной службы keepalived командой: | |||
traceroute 8.8.8.8 –source=91.142.82.222 | |||
ИСТОЧНИКИ: | ИСТОЧНИКИ: |
Версия от 05:50, 4 февраля 2024
Сетевые сервисы VRRP
- Как настроить VRRP на Debian
Установку и настройку будем проводить на примере серверов SRV1 и SRV2 с выданным диапазоном адресов 91.142.82.216/29
ipv4 и ipv6 выдаются только подсетями
Минимальный размер подсети ipv4: /29, ipv6: /64.
Пример: выдана подсеть ipv4 адресов 91.142.82.216/29
91.142.82.217 - виртуальный ip (который является шлюзом по умолчанию) 91.142.82.218 - служебный ip 91.142.82.219 - служебный ip 91.142.82.220 - клиентский ip 91.142.82.221 - клиентский ip 91.142.82.222 - плавающий ip
У каждого Linux сервера есть два физических сетевых интерфейса: eth1 с белым IP адресом и доступом в Интернет, eth0 свободен
В качестве реальных IP адресов серверов используются:
91.142.82.220 — для SRV1 91.142.82.221 — для SRV2
В качестве виртуального IP адреса, который будет автоматически переключаться между серверами в случае сбоев используется:
91.142.82.222
- Важно. При настройке VRRP, в качестве адреса для виртуального IP не используется реальный адрес сервера, так как, в случае сбоя, его адрес переместится на соседний, и при восстановлении, он окажется изолированным от сети. Дело в том, чтобы вернуть свой адрес, нужно отправить в сеть VRRP пакет, но не будет IP адреса, с которого это возможно сделать.
- Установка и настройка
Установить пакет keepalived нужно на обоих серверах, командой:
apt-get install keepalived
После завершения установки на обоих серверах правим конфигурационный файл
nano /etc/keepalived/keepalived.conf
Разберем опции более подробно:
- vrrp_instance <название> — секция, определяющая экземпляр VRRP;
- state <MASTER|BACKUP> — начальное состояние при запуске;
- interface <название интефейса> — интерфейс, на котором будет работать VRRP;
- virtual_router_id <число от 0 до 255> — уникальный идентификатор VRRP экземпляра, должен совпадать на всех серверах;
- priority <число от 0 до 255> — задает приоритет при выборе MASTER, сервер с большим приоритетом становится MASTER;
- virtual_ipaddress — блок виртуальных IP адресов, которые будут активны на сервере в состоянии MASTER. Должны совпадать на всех серверах внутри VRRP экземпляра.
- Таким образом, при штатной работе, сервер SRV1 будет MASTER для виртуального IP 91.142.82.222
Если на сервере активирован файрвол, то нужно добавить разрешающие правила для multicast трафика и vrrp протокола с помощью iptables:
Для SRV1:
iptables -I INPUT -p vrrp -j ACCEPT iptables -I OUTPUT -p vrrp -j ACCEPT
Для SRV2:
iptables -I INPUT -p vrrp -j ACCEPT iptables -I OUTPUT -p vrrp -j ACCEPT
Активируем автозагрузки и запустим службу keepalived на обоих серверах:
sudo /etc/init.d/keepalived start
После запуска службы keepalived, виртуальные IP будут присвоены интерфейсам из конфигурационного файла. Посмотрим текущие IP адреса на интерфейсе eth1 серверов:
SRV1:
SRV2:
Проверим работоспособность настроенной службы keepalived командой:
traceroute 8.8.8.8 –source=91.142.82.222
ИСТОЧНИКИ:
- Как настроить VRRP на Debian
- Принцип работы протокола VRRP
- Протокол маршрутизатора с горячим резервированием (HSRP) и протокол резервирования виртуального маршрутизатора (VRRP)
- VRRP в Linux
- vrrp на базе keepalived linux debian dns
--