Назначение: для приема одноадресных пакетов UDP, отправленных в один порт в двух разных процессах.UDP одноадресный: два процесса прослушивания на одном и том же порту udp; только один прием пакетов
система: Linux, язык: C
Я могу связать два разъема в двух разных процессов к одному порту, используя SO_REUSEADDR. Но, как и ожидалось, пакеты принимаются только в одном (один из них позже).
Возможно ли получать пакеты в обоих процессах? Если нет, то как tcpdump способен читать, но не потреблять пакеты.
Что вам нужно? Проверять датаграммы? → используйте гнездо AF_PACKET или libpcap. Выполнять обработку и отправлять ответы? → использовать многоадресную рассылку. Чтобы выполнить некоторую балансировку нагрузки? → используйте некоторый прокси-маршрутизатор с балансировкой нагрузки. – ninjalj