Перехватывать сетевые пакеты в пользовательское пространство и передавать пакеты приложению.Linux

Anonymous
Перехватывать сетевые пакеты в пользовательское пространство и передавать пакеты приложению.

Сообщение Anonymous »

У меня есть одно приложение, которое отправляет/получает пакеты, используя обычное чтение/запись/отправку/запись glibc.
Мне бы хотелось, чтобы второе приложение останавливало попадание пакетов в сеть, получало пакет и иметь возможность отправлять пакеты обратно исходному приложению, чтобы оно получало их через обычную glibc::recv().
Возможно ли это в Linux?
Я могу написать модуль ядра, но не уверен, поможет ли это взаимодействовать с обоими приложениями пользовательского пространства?
Я нашел эту библиотеку:
https://www.netfilter.org/projects/libnetfilter_queue/
но примеров не так много, и мне интересно, есть ли лучший подход?
Я видел упоминание о Netfilter, но не уверен, может ли он перехватывать и доставлять в пространство пользователя или только модули ядра?
Сокеты Netlink? р>

Подробнее здесь: https://stackoverflow.com/questions/786 ... pplication

Вернуться в «Linux»