Назад | Перейти на главную страницу

Keepalived: многоадресная рассылка против одноадресной

Я планирую развернуть несколько 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-адреса для всех кластеров БД.