连接跟踪机制在Netfilter框架里所注册的hook函数一共就五个:ipv4_conntrack_defrag()、ipv4_conntrack_in()、ipv4_conntrack_local()、ipv4_conntrack_help()和ipv4_confirm(); ipv4_conntrack_defrag 主要讲的是 分片重组 可以参考ip分片重组这篇文章。 这样数据包就会经过ipv4注册的钩子项,并调用nf_conntrack_in()...
@@ -6,7 +6,6 @@ void nf_defrag_ipv6_enable(void); int nf_ct_frag6_init(void); void nf_ct_frag6_cleanup(void); struct sk_buff *nf_ct_frag6_gather(struct net *net, struct sk_buff *skb, u32 user); void nf_ct_frag6_consume_orig(struct sk_buff *skb); struct inet_frags...
depends: nf_defrag_ipv6,libcrc32c,nf_defrag_ipv4 retpoline: Y intree: Y name: nf_conntrack vermagic: 5.0.21-2-pve SMP mod_unload modversions parm: tstamp:Enable connection tracking flow timestamping. (bool) parm: acct:Enable connection tracking flow accounting. (bool) parm: nf_conntrack...
depends: nf_defrag_ipv6,libcrc32c,nf_defrag_ipv4 retpoline: Y intree: Y name: nf_conntrack vermagic: 5.0.21-2-pve SMP mod_unload modversions parm: tstamp:Enable connection tracking flow timestamping. (bool) parm: acct:Enable connection tracking flow accounting. (bool) ...
Elixir Cross Referencer - source code of Linux v6.13.4: net/bridge/netfilter/nf_conntrack_bridge.c
@@ -69,7 +69,7 @@ static unsigned int ipv6_defrag(void *priv, if (err == -EINPROGRESS) return NF_STOLEN; return NF_ACCEPT; return err == 0 ? NF_ACCEPT : NF_DROP; } static struct nf_hook_ops ipv6_defrag_ops[] = {1
连接跟踪模块通常依赖于特定的网络协议。请确保你正在使用 IPv4 或 IPv6,并且相关协议模块也已加载。例如,如果你只需要 IPv4,你还需要确保ip_tables和相关模块也被加载。 可以通过以下命令检查 IP 表和 conntrack 支持是否正常工作: lsmod|grep iptable