Linux kernel Linux Netfilter:在碎片整理之前将数据包排队到用户空间
问题是:在碎片整理之前,如何使用netfilter NFQUEUE将数据包排队到用户空间 根据,Linux kernel Linux Netfilter:在碎片整理之前将数据包排队到用户空间,linux-kernel,iptables,netfilter,ip-fragmentation,Linux Kernel,Iptables,Netfilter,Ip Fragmentation,问题是:在碎片整理之前,如何使用netfilter NFQUEUE将数据包排队到用户空间 根据,nf\u碎片整理\u ipv4安装在nf\u INET\u PRE\u ROUTING(在iptables/nftables中称为PREROUTING)和nf\u INET\u LOCAL\u OUT(输出)中 因此,我尝试了以下反碎片整理nftables过滤器(原始:)用于NF\u INET\u LOCAL\u OUT,但仍然得到碎片整理的数据包 sudo nft add table filter
nf\u碎片整理\u ipv4
安装在nf\u INET\u PRE\u ROUTING
(在iptables/nftables中称为PREROUTING)和nf\u INET\u LOCAL\u OUT
(输出)中
因此,我尝试了以下反碎片整理nftables过滤器(原始:)用于NF\u INET\u LOCAL\u OUT
,但仍然得到碎片整理的数据包
sudo nft add table filter
sudo nft add chain filter predefrag { type filter hook output priority -- -450 \; }
sudo nft add filter predefrag skuid nfqhooked counter queue num 42
在上面的过滤器中,-450
表示在NF\u IP\u PRI\u CONNTRACK\u DEFRAG=-400之前的优先级。i、 例如,过滤器应在nf\u defrag\u ipv4
之前工作
我正在使用Linux 3.19(Ubuntu 15.04)和libnetfilter_queue.so.1,我自己解决了这个问题
我误解了netfilter处理的TCP重组实际上是由“TCP自动塞塞”处理的
现在,我只需将0
写入/proc/sys/net/ipv4/tcp\u自动标记
,就可以获得碎片化(即非软木塞)数据包
我自己刚决定
我误解了netfilter处理的TCP重组实际上是由“TCP自动塞塞”处理的
现在,我只需将0
写入/proc/sys/net/ipv4/tcp\u自动标记
,就可以获得碎片化(即非软木塞)数据包