Фильтрация пакетов с помощью пакета MMAP?
Я использую package_mmap для захвата всех пакетов в системе, но, похоже, нет никакого способа помешать получению их остальной частью ОС. Я хочу иметь возможность иметь эксклюзивный контроль над пакетами, поступающими в пользовательское пространство, и решать, попадать ли они в другие приложения в системе или отбрасывать их, поэтому я могу фильтровать пакеты на основе критериев.
Есть ли способ сделать это? Я не могу найти документацию по этому конкретному вопросу. Я предполагаю, что мне нужно иметь возможность удалять все входящие пакеты из стека IP, чтобы никакая другая программа не получала их, а затем иметь возможность повторно вставлять пакеты по принципу пакет за пакетом.
1 ответ
Вы не можете делать то, что вы хотите с PACKET
розетки - они не предназначены для этой цели.
Вместо этого вам нужно использовать libnetfilter_queue вместе с правилом iptables, которое направляет все входящие пакеты в вашу очередь.