LINUX.ORG.RU
ФорумAdmin

L7-filter не матчит трафик


0

1

Пытюсь завести l7-filter (kernel версию). Делаю так:

iptables -t mangle -A PREROUTING -m layer7 --l7proto http
После пропускания HTTP-трафика через роутер получаю следующее:
Chain PREROUTING (policy ACCEPT 39804 packets, 36M bytes)
 pkts bytes target     prot opt in     out     source               destination
  248  207K            all  --  *      *       0.0.0.0/0            0.0.0.0/0           LAYER7 l7proto http
То есть l7-filter отматчил лишь 248 пакетов из 40К.

Я было подумал, что он матчит только первые пакеты соединений (хотя на домашней странице сказано, что kernel-версия метит как раз все пакеты), попробовал сделать через CONNMARK:

iptables -t mangle -A PREROUTING -m layer7 --l7proto http -j CONNMARK --set-mark 100500
iptables -t mangle -A PREROUTING -m connmark --mark 100500 -j CONNMARK --restore-mark

и получил то же самое. В любой другой цепочке тоже получаю тот же самый результат. Паттерны все на месте, iptables при добавлении правила их видит.

Что я делаю не так? Почему такое может происходить?



Последнее исправление: auctioneer_chant (всего исправлений: 1)

Ответ на: комментарий от Myp3ik

Не-а. Та же фигня.

Chain FORWARD (policy ACCEPT 12134 packets, 12M bytes)
 pkts bytes target     prot opt in     out     source               destination
   20 17558            all  --  *      *       0.0.0.0/0            0.0.0.0/0           LAYER7 l7proto http
auctioneer_chant
() автор топика

Товарищи, а какие вообще плюсы-минусы у userspace и kernel-версий? Что вынос в userspace будет вносить оверхед - это понятно. Где-то краем уха видел, что userspace имеет приличную задержку распознавания, порядка секунд - это так?

И почему все роутеродистры, например, юзают kernel-версию?

auctioneer_chant
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.