Я планирую развернуть несколько keepalived
маршрутизаторы для поддержки плавающих IP-адресов для разных кластеров баз данных. Планируется развернуть отдельный VRRP instance
на каждом кластере локально согласно этот гид, так что будет только два VRRP
маршрутизаторы / экземпляры в каждом кластере.
В keepalived
пакет, доступный из репозитория CentOS 6x, - 1.2.7, и кажется, что одноадресная передача не была частью основного keepalived
кодовая база примерно до версии 1.2.8.
Q1. Интересно, умножить ли VRRP
маршрутизаторы могут наводнить сеть многоадресной рекламой и вызывать проблемы с производительностью? Вы бы порекомендовали использовать в этом случае одноадресную передачу? Однако я заметил следующее предупреждение, связанное с одноадресной передачей (Ref.):
vrrp: отключить проверку работоспособности TTL для одноадресного варианта использования. Для защиты от любой инъекции пакетов VRRP обеспечивает проверку работоспособности через TTL заголовка IP. Этот TTL ДОЛЖЕН быть равен 255 и означает, что отправитель и получатель подключены к одному и тому же сегменту Ethernet. Теперь с расширением одноадресной рассылки эта защита ДОЛЖНА быть отключена, поскольку реклама VRRP в основном будет проходить через разные сегменты сети. !!! ВНИМАНИЕ !!! При использовании VRRP в одноадресном сценарии использования для защиты от любого внедрения пакетов рекомендуется использовать метод аутентификации IPSEC-AH, в противном случае вы подвергнетесь опасности для потенциальных злоумышленников!
Q2. Почему другие серверы в сети, не входящие в vrrp.mcast.net
Группа Муликаст все еще получает рекламу VRRP?
# netstat -g
IPv6/IPv4 Group Memberships
Interface RefCnt Group
--------------- ------ ---------------------
lo 1 all-systems.mcast.net
eth0 1 all-systems.mcast.net
eth1 1 all-systems.mcast.net
lo 1 ff02::1
eth0 1 ff02::1:ff33:2440
eth0 1 ff02::1
eth1 1 ff02::1:ff90:4d5b
eth1 1 ff02::1
-
# tcpdump -i eth1 -c 2 host vrrp.mcast.net
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
20:30:46.241228 IP 172.16.0.70 > vrrp.mcast.net: VRRPv2, Advertisement, vrid 3, prio 1, authtype simple, intvl 1s, length 20
20:30:47.241372 IP 172.16.0.70 > vrrp.mcast.net: VRRPv2, Advertisement, vrid 3, prio 1, authtype simple, intvl 1s, length 20
2 packets captured
2 packets received by filter
0 packets dropped by kernel
Я предполагаю, что другим подходом было бы развертывание только одной пары VRRP
маршрутизаторы и поддерживают VIP-адреса для всех кластеров БД.