linux – 在重新启动时保持nf_conntrack_max

在/ proc我有两个nf_conntrack_max条目:
/proc/sys/net/netfilter/nf_conntrack_max
/proc/sys/net/nf_conntrack_max

似乎指向相同的值,因为改变另一个也会改变另一个.在/etc/sysctl.conf中设置这两个:

net.netfilter.nf_conntrack_max=65528
net.ipv4.netfilter.ip_conntrack_max=65535

重新启动后该值仍为32764,因此更改无效.有没有人遇到过这个?我的猜测是这些值是在相关模块加载之前应用的,但希望有人已经知道解决方案.

解决方法

这是因为/ proc / sys / net / nf_conntrack_max依赖于模块nf_conntrack.但系统启动时,认情况下不会加载此模块.

但是如果你跑了

iptables -t nat -L

要么

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

此模块将自动加载并设置为您的系统支持的最大数量(如果您的RAM为> 4G,则最大数量为65536,但它在不同系统中有所不同.)您可以将其设置为更大的数字(如6553600) /etc/sysctl.conf中).

解:

文件/ etc / modules的末尾添加一行:

nf_conntrack

在执行sysctl之前,将在系统启动时加载此模块.

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...