• Florian Westphal's avatar
    netfilter: conntrack: do not enable connection tracking unless needed · 4d3a57f2
    Florian Westphal authored
    Discussion during NFWS 2017 in Faro has shown that the current
    conntrack behaviour is unreasonable.
    
    Even if conntrack module is loaded on behalf of a single net namespace,
    its turned on for all namespaces, which is expensive.  Commit
    481fa373 ("netfilter: conntrack: add nf_conntrack_default_on sysctl")
    attempted to provide an alternative to the 'default on' behaviour by
    adding a sysctl to change it.
    
    However, as Eric points out, the sysctl only becomes available
    once the module is loaded, and then its too late.
    
    So we either have to move the sysctl to the core, or, alternatively,
    change conntrack to become active only once the rule set requires this.
    
    This does the latter, conntrack is only enabled when a rule needs it.
    Reported-by: default avatarEric Dumazet <edumazet@google.com>
    Signed-off-by: default avatarFlorian Westphal <fw@strlen.de>
    Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
    4d3a57f2
nf_conntrack_l3proto.h 2.58 KB