У меня есть устройство на базе Linux с двумя сетевыми картами:
NIC1 eth0: 192.168.1.100/24; Шлюз: 192.168.1.1
NIC2 eth1: 192.168.1.101/24; Шлюз не установлен
Это устройство обменивается данными с сервером приложений (IP: 10.1.1.1). Логика приложения связывает устройство с обоими его IP-адресами, таким образом достигая устройства с его первичным IP-адресом или, если это не удается, переключиться на вторичный. Это должно обеспечивать избыточность на уровне сетевой карты устройства. Я не могу использовать здесь связывание, поскольку сервер ожидает, что устройство будет иметь 2 IP-адреса.
В случае отсутствия дальнейшей настройки, если я отключу NIC1, устройство больше не сможет взаимодействовать с сервером, это ожидается, поскольку NIC2 не имеет связанного шлюза.
Если, однако, я добавлю статический маршрут к сети сервера через NIC2, и таблица маршрутизации будет
Destination Gateway Genmask Int
0.0.0.0 192.168.1.1 255.255.255.0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 eth0
10.1.1.0 192.168.1.1 255.255.255.0 eth1
Я ожидаю следующего поведения
1 и 2 происходят, как и ожидалось. Вместо этого, когда NIC2 отключен, сервер недоступен.
Зачем? Если я помещаю NIC1 и NIC2 в разные подсети, точка 3 не выходит из строя, т.е. какой бы кабель я ни отсоединил, устройство всегда доступно на другом NIC. Какая техническая причина препятствует тому, чтобы это произошло, когда обе сетевые карты установлены в одной подсети?
РЕДАКТИРОВАТЬ
Я рассмотрел проблему потока ARP, которая кажется больше проблемой на уровне приложений, но здесь это не так. ARP flux, похоже, не препятствует обмену данными между хостами, поэтому не объясняет, почему проверка связи NIC1 не выполняется, когда NIC2 отключен.
Недостаточно репутации для комментариев, поэтому пишу это как ответ. Я предлагаю вам объединиться или объединиться. Решение, которое вы пытаетесь дать, очень неудобно. Настройте виртуальный интерфейс связи / группы, содержащий 2 физических сетевых карты (активный / активный или активный / пассивный), а затем добавьте 2 IP-адреса в виртуальный интерфейс связи / группы, чтобы приложение считало их избыточными.