修改内核参数

临时修改

修改/proc 目录

1
echo 2048 > /proc/sys/net/core/somaxconn

/proc/sys/ 目录是 Linux 内核启动后生成的伪目录,其目录下的 net 文件夹中存放了当前系统中生效的所有内核参数、目录树结构与参数的完整名称相关,如 net.ipv4.tcp_tw_recycle,它对应的文件是 /proc/sys/net/ipv4/tcp_tw_recycle,文件的内容就是参数值。

sysctl 命令修改

1
sysctl -w net.ipv4.tcp_tw_recycle="0"

永久修改

1
2
3
vim /etc/sysctl.conf
net.core.somaxconn = 2048
sysctl -p

查看内核参数

查看/proc/目录

1
cat /proc/sys/net/ipv4/tcp_tw_recycle

sysctl 查看

1
2
sysctl -a                            # 查看所有
sysctl -n net.ipv4.ip_forward # 查看单个

常用内核参数

1
2
3
4
5
6
vm.overcommit_memory = 1
net.ipv4.ip_forward = 1 # 允许ip转发
net.ipv4.icmp_echo_ignore_all=1 # 不允许ping
tcp_timestamps # 是否开启 tcp timestamps 选项,timestamps 是在 tcp 三次握手过程中协商的,任意一方不支持,该连接就不会使用 timestamps 选项。
tcp_tw_recycle # 是否开启 tcp time_wait 状态回收。
tcp_tw_reuse # 开启后,可直接回收超过1s的 time_wait 状态的连接。