二、ip相关内核配置参数
linux内核网络参数中关于ip的配置参数通常是用来定义或调整ip包的一些特定的参数,除此之外还定义了系统的一些网络特性。
1.ip_default_ttl:设置从本机发出的ip包的生存时间,参数值为整数,范围为0~128,缺省值为64。在windows系统中,ip包的生存时间通常为128。如果你的系统经常得到“Time to live exceeded”的icmp回应,可以适当增大该参数的值,但是也不能过大,因为如果你的路由的环路的话,就会增加系统报错的时间。
2.ip_dynaddr:该参数通常用于使用拨号连接的情况,可以使系统动能够立即改变ip包的源地址为该ip地址,同时中断原有的tcp对话而用新地址重新发出一个syn请求包,开始新的tcp对话。在使用ip欺骗时,该参数可以立即改变伪装地址为新的ip地址。该参数的参数值可以是:
1:启用该功能
2:使用冗余模式启用该功能
0:禁止该功能
应用实例:
在使用ipchains配置ip欺骗带动局域网共享一个ppp连接上网时,有时会出现刚开时连接一个站点连不通,再次刷新又可以连接的情况,这时候就可以设置该参数的值为1,从而立即改变伪装地址为新的ip地址,就可以解决这类问题。命令为:
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
3.ip_forward:可以通过该参数来启用包转发功能,从而使系统充当路由器。参数值为1时启用ip转发,为0时禁止ip转发。注意,我们可以在单网卡或双网卡的主机上实现ip转发。
应用实例:
假设我们使用一部装有双网卡的linux主机充当防火墙,这时候我们就必须执行以下命令来打开ip转发功能:
echo "1" > /proc/sys/net/ipv4/ip_forward
4. ip_local_port_range:设置当本地系统向外发起tcp或udp连接请求时使用的端口范围。设置值为两个整数,缺省为“1024 4999”。
应用实例:
echo "1450 6000" > /proc/sys/net/ipv4/ip_local_port_range
三、tcp相关内核配置参数
通过tcp配置参数可以控制tcp会话过程中的各个方面。
a) tcp_fin_timeout:在一个tcp会话过程中,在会话结束时,A首先向B发送一个fin包,在获得B的ack确认包后,A就进入FIN WAIT2状态等待B的fin包然后给B发ack确认包。这个参数就是用来设置A进入FIN WAIT2状态等待对方fin包的超时时间。如果时间到了仍未收到对方的fin包就主动释放该会话。参数值为整数,单位为秒,缺省为180秒。
b) tcp_syn_retires:设置开始建立一个tcp会话时,重试发送syn连接请求包的次数。
参数值为小于255的整数,缺省值为10。假如你的连接速度很快,可以考虑降低该值来提高系统响应时间,即便对连接速度很慢的用户,缺省值的设定也足够大了。
c) tcp_window_scaling:设置tcp/ip会话的滑动窗口大小是否可变。参数值为布尔值,为1时表示可变,为0时表示不可变。Tcp/ip通常使用的窗口最大可达到65535 字节,对于高速网络,该值可能太小,这时候如果启用了该功能,可以使tcp/ip滑动窗口大小增大数个数量级,从而提高数据传输的能力。 |