Автоматическое зеркалирование портов в OVS без дублированных пакетов

Вот в чем дело: мне нужно настроить зеркалирование портов в Proxmox и OVS, чтобы отслеживать весь трафик от виртуальных машин и отправлять их в IDS. Эта конфигурация не должна генерировать дублирующиеся пакеты и, в идеале, быть динамической. Это означает, что нам нужно отслеживать любые новые виртуальные машины, которые подключаются к мосту OVS, без вмешательства человека.

В аппаратном переключателе все просто; Вы можете выполнить команду, которая, например, отражает только входящий трафик портов 1-23 и отправляет скопированные кадры на порт 24. Вам необходимо отразить только одно направление (только входной или выходной), поскольку в противном случае входящий пакет порта Χ, который предназначен для порта Υ будет скопирован два раза. Кроме того, не следует отслеживать некоторые порты, которые соединяют коммутаторы, а зеркалировать только граничные порты.

Но как насчет зеркалирования портов в OVS? Каждый порт выделяется динамически для каждой новой виртуальной машины, которая загружается, поэтому мы не можем предоставить одну команду, которая контролирует все порты, а также новые. Конечно, есть select_all опция в ovs-vsctl, но эта конфигурация будет генерировать дублированные пакеты, так как все порты будут контролироваться как в направлении входа, так и в направлении выхода.

Приложение SDN (может работать на Ryu), которое запускается каждый раз, когда новый порт подключается к мосту OVS, и выдает команду зеркалирования портов, может решить эту проблему. Но я понятия не имею, как это написать.

Любые идеи?

0 ответов

Другие вопросы по тегам