kernel: ip_conntrack: table full, dropping packet

来源:互联网 发布:js 10秒刷新一次 编辑:程序博客网 时间:2024/04/24 10:08
 原贴:http://my.icxo.com/254747/viewspace-47172.html

今天有台下载服务器出问题,丢包很严重,重启后看系统日志,很多“kernel: ip_conntrack: table full, dropping packet.” 

网上搜索了一下,用hping解决

下载hping:
http://www.hping.org/download.html

./configure
make
make install

安装后写一个script.

代码:

#!/bin/bash

echo
echo "############################"
echo "# Edit by Youngh 2003.06.24 v1.1 "
echo "# Usage : clr_conns IpAddress"
echo "# This will clear all connections from this IP_Address"
echo "# Example:/root/clr_conns 10.0.3.3 "
echo "############################"
echo

if [ -z $1 ] ; then
exit
fi

grep -E "^tcp .{10,25}ESTABLISHED src=$1 " /proc/net/ip_conntrack | while read line ; do
S_IP=`echo $line | awk '{print substr($5,5)}'`
S_SOCK=`echo $line | awk '{print substr($7,7)}'`
D_IP=`echo $line | awk '{print substr($6,5)}'`
D_SOCK=`echo $line | awk '{print substr($8,7)}'`
echo "$S_IP:$S_SOCK $D_IP:$D_SOCK"

hping2 $D_IP -R -s $S_SOCK -p $D_SOCK -a $S_IP -k -c 1 >/dev/null 2>/dev/null &

done

保存为clr_conns.sh

用:

sh clr_conns.sh x.x.x.x

就可以清除显示的连接.

摘自:中国Linux论坛

 

查看ip_conntrack前几位IP

cat /proc/net/ip_conntrack | cut -d ' ' -f 10 | cut -d '=' -f 2 | sort | uniq -c | sort -nr | head -n 5

http://blog.csdn.net/zhy97031/archive/2007/07/12/1686598.aspx

摘自Iptables 指南 1.1.19 
当一个连接在两个方向上都有传输时,conntrack记录就删除[UNREPLIED]标志,然后重置。在末尾有 [ASSURED]的记录说明两个方向已没有流量。这样的记录是确定的,在连接跟踪表满时,是不会被删除的,没有[ASSURED]的记录就要被删除。连接跟踪表能容纳多少记录是被一个变量控制的,它可由内核中的ip- sysctl函数设置。默认值取决于你的内存大小,128MB可以包含8192条目录,256MB是16376条。你也可以在 /proc/sys/net/ipv4/ip_conntrack_max里查看、设置。
像:
[root@mailserver root]# sysctl -a|grep conntrack_max
net.ipv4.ip_conntrack_max = [color=red]65528[/color]
[root@mailserver root]# free
            [color=red] total[/color]       used       free     shared    buffers     cached
Mem:       [color=red]1027724 [/color]   1016160      11564        208     151676     767880
-/+ buffers/cache:      96604     931120
Swap:      1024056          0    1024056

-------------------------------------------------------------------------------------------------