Хочу поделиться опытом настройки NQA для переадресации (redirection) на коммутаторе CE6800 (V2R2C50)
Пример топологии:
Пример
конфигурации:
traffic behavior to_fw1
statistics enable
redirect nexthop 1.1.1.1 2.2.2.1 track nqa netops icmp
nqa
test-instance netops icmp
test-type icmp
destination-address ipv4 1.1.1.1
И возникла проблема: когда peer 1.1.1.1 уходит в down (например фильтруем пинги чтобы они не доходили) – траффик не переключается на 2.2.2.1, и по прежнему отсылается на 1.1.1.1.
Рассмотрим проблему.
Командой display nqa results test-instance netops icmp проверим статус: видно что потеря пакетов NQA теста = 100%, но traffic statistics на устройстве показывает что next-hop для траффика все также 1.1.1.1 .
Проверим документацию:
Команда redirect nexthop позволяет нам настроить до 16 next hop IP addresses, вводя их последовательно.
При наличии нескольких адресов настроенных в данной команде, свитч будет делать редирект в режиме active/standby. Устройство определяет основной и запасной путь на основе последовательности указанных адресов в команде.
Next hop IP address указанный в команде первым имеет больший приоритет и он будет выбираться для основного канала. Остальные адреса – как запасные.
Когда основной канал уходит в down – последовательно беруться запасные.
Если NQA test instance сконфигурирован так чтобы определять путь для перенаправления next hop IP address и число NQA link detection failures – больше или равно максимальному значению – текущий next hop перестает работать. При наличии других next hop – выбирается следующий и трафик перенаправляется на следующий доступный запасной next
Таким образом настройка track nqa должна быть ассоциирована с первый адресом а не со вторым.
Такием образом причина пробелмы – в настройке nqa, трек должен быть связан с первым адресом а не со вторым (по сути последним в конфиге)
Решение – поменять конфиг следующим образом:
redirect nexthop 1.1.1.1 track nqa netops icmp 2.2.2.1
NQA тест ассоциирован с первый адресом 1.1.1.1
Т.е. трек NQA должен быть привязан к тому адресу который будет проверяться. Если этот адрес стоит в конце команды – переключения не произойдет.