您的位置:首页 > 理论基础 > 计算机网络

Linux 常见网络参数整理

2015-10-20 16:15 225 查看
1.tcp连接保持管理:

net.ipv4.tcp_keepalive_time = 7200

如果在该参数指定时间内某条连接处于空闲状态,则内核向远程主机发起探测

net.ipv4.tcp_keepalive_intvl = 75

内核向远程主机发送的保活探测的时间间隔

net.ipv4.tcp_keepalive_probes = 9

内核发送保活探测的最大次数,如果探测次数大于这个数,则断定远程主机不可达,则关闭该连接并释放本地资源

一个连接7200s空闲后,内核会每隔75秒去重试,若连续9次则放弃。这样就导致一个连接经过2h11min的时间才能被丢弃,降低该值能够尽量减小

失效连接所占用的资源,而被新的连接所使用。

2.tcp连接管理:

net.core.netdev_max_backlog=3000

该文件表示在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。

net.ipv4.tcp_max_syn_backlog = 1024

控制每个端口的tcp syn的队列长度,来自客户端的连接请求需要排队,直至服务器接受,如果连接请求数大于该值,则连接请求会被丢弃,客户端无法

连接服务器,一般服务器要提高此值

net.ipv4.tcp_synack_retries = 5

控制内核向某个socket的ack,syn段重新发送响应的次数,降低此值可以尽早检测到来自远程主机的连接失败尝试

net.ipv4.tcp_retries2 = 15

控制内核向已建立连接的远程主机重新发送数据的次数,降低此值,可以尽早的检测连接失效

3.net.ipv4.tcp_syncookies = 1

SYN Cookie是对TCP服务器端的三次握手协议作一些修改,专门用来防范SYN Flood攻击的一种手段。它的原理是,在TCP服务器收到TCP SYN包并返回TCP
SYN+ACK包时,不分配一个专门的数据区,而是根据这个SYN包计算出一个cookie值。在收到TCP ACK包时,TCP服务器在根据那个cookie值检查这个TCP ACK包的合法性。如果合法,再分配专门的数据区进行处理未来的TCP连接。

4.net.ipv4.tcp_tw_reuse = 1

表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0

net.ipv4.tcp_tw_recycle = 1

表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0

5.net.ipv4.tcp_fin_timeout = 60

缩短默认的timeout的时间

6. /proc/sys/net/ipv4/conf/*/accept_redirects

   如果主机所在的网段中有两个路由器,你将其中一个设置成了缺省网关,但是该网关在收到你的ip包时发现该ip包必须经过另外一个路由器,这时这个路由器就会给你

发一个所谓的“重定向”icmp包,告诉将ip包转发到另外一个路由器。参数值为布尔值,1表示接收这类重定向icmp 信息,0表示忽略。在充当路由器的linux主机上缺

省值为0,在一般的linux主机上缺省值为1。建议将其改为0以消除安全性隐患。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: