Почему VRRP требует сетевой маски / 32?

В конфигурации VRRP я использовал маску подсети / 32, но я никогда не знал причина позади.

Иногда я использую ту же маску подсети, что и основной интерфейс, например / 24, и в некоторых случаях она работает, а в других int, пока я не установил / 32, это не так.

Для Например, на документация Mikrotik указывает на это, но без объяснения:

Примечание: адрес на интерфейсе VRRP должен иметь сетевую маску / 32, если адрес, настроенный на VRRP, находится из той же подсети, что и на любом другом интерфейсе маршрутизатора.

Это действительно требование? Во FreeBSD CARP я не нашел аналогичного требования.

2
задан 25 June 2020 в 19:09
1 ответ

Виртуальный IP-адрес, используемый VRRP, HSRP, GLBP или CARP, — это просто IP-адрес. У него нет маски подсети.

Например, на маршрутизаторе Cisco вы настраиваете HSRP следующим образом:

interface GigabitEthernet0/0
  ip address 192.168.1.2 255.255.255.0
  standby 1 ip 192.168.1.1

То же верно и для VRRP:

interface GigabitEthernet0/0
  ip address 192.168.1.2 255.255.255.0
  vrrp 1 ip 192.168.1.1

Я считаю, что в Linux требуется настроить все ваши дополнительные IP-адреса на физическом интерфейсе как a /32, аналогично вашему ограничению VRRP на маршрутизаторах Microtik. Это ограничения, налагаемые реализацией, а не протоколом. Если бы программисты Linux или Microtik реализовали эту концепцию по-другому, возможно, вы могли бы указать любую маску подсети или вообще не указывать. В конце концов, ему не нужна маска подсети, поскольку он может получить эту информацию с физического интерфейса.

2
ответ дан 3 December 2020 в 13:37

Теги

Похожие вопросы