Linux router
Z Wiki UnArt Slavičín
Conntrack
Zjištění aktuální hodnoty nf_conntrack_max:
cat /proc/sys/net/netfilter/nf_conntrack_max 65536
Zjištění aktuální hodnoty nf_conntrack_buckets (hashsize):
cat /proc/sys/net/netfilter/nf_conntrack_buckets 16384
Zjištění velikost hodnoty jednoho záznamu v tabulce conntrack:
cat /proc/slabinfo | awk '{if ($1 == "nf_conntrack") print $4}' 256
Výpočet:
nf_conntrack_max = velikost použitelné RAM v bytech / velikost jednoho záznamu nf_conntrack_buckets = nf_conntrack_max / 8
Příklad výpočtu pro 8GB RAM a velikost záznamu 256:
nf_conntrack_max = 8 * 1073741824 / 256 = 33554432 nf_conntrack_buckets = 33554432 / 8 = 4194304
Hodnotu nf_conntrack_max zapíšeme do souboru /etc/sysctl.conf:
net.netfilter.nf_conntrack_max=33554432 net.netfilter.nf_conntrack_tcp_timeout_established=7200
Hodnotu nf_conntrack_buckets do souboru /etc/modprobe.d/nf_conntrack.conf:
options nf_conntrack hashsize=4194304
Změníme za běhu:
echo 4194304 > /sys/module/nf_conntrack/parameters/hashsize sysctl -p
Zdroje: