關於ip_conntrack: table full, dropping packet的問題

統報: 

Apr 17 16:37:26 www kernel: printk: 135 messages suppressed. 

Apr 17 16:37:26 www kernel: ip_conntrack: table full, dropping packet. 

Apr 17 16:37:26 www kernel: ip_conntrack: table full, dropping packet. 

Apr 17 16:37:33 www kernel: printk: 139 messages suppressed. 

Apr 17 16:37:33 www kernel: ip_conntrack: table full, dropping packet. 

Apr 17 16:37:37 www kernel: printk: 60 messages suppressed. 

Apr 17 16:37:37 www kernel: ip_conntrack: table full, dropping packet. 

Apr 17 16:37:52 www kernel: printk: 19 messages suppressed. 

Apr 17 16:37:52 www kernel: ip_conntrack: table full, dropping packet. 

 

有丟包現象 

 

[root@www ~]# wc -l /proc/net/ip_conntrack 

68463 /proc/net/ip_conntrack 

 

[root@www ~]# cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max 

65536 

 

可調整以下參數: 

 

echo 180 > 

/proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established

echo 262144 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max 

echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time 

echo 1024 > /proc/sys/net/ipv4/neigh/default/gc_thresh1 

echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh2 

echo 8192 > /proc/sys/net/ipv4/neigh/default/gc_thresh3 

 

或vi /etc/sysctl.conf 

 

net.ipv4.ip_conntrack_max = 655360 

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180 

 

再sysctl -p 

 

相關參數說明: 

 

ARP支持一個sysctl接口,可以用以配置全局參數或逐個網絡接口地進行配製。該sysctl

可以通過/proc/sys/net/ipv4/neigh/*/*文件或者使用sysctl(2)接口來訪問。系統中 

每個接口都在/proc/sys/net/ipv4/neigh/.中有自己的目錄。 `default’目錄中的設置用於 

所有新建的設備。 sysctl相關的時間是以秒為單位,除非特別聲明過. 

IXDBA.NET社區論壇 

anycast_delay 

對IPv6相鄰請求信息的回复的最大延遲時間;目前還不支持anycast。缺省值為1秒。 

app_solicit 

這是在使用多路廣播探測(multicast probe)前,經過網絡連接送到用戶間隙ARP端口監控程序 

的探測(probe)最大數目(見mcast_solicit )。缺省值為0。 

base_reachable_time 

一旦發現相鄰記錄,至少在一段介於base_reachable_time/2和 

3*base_reachable_time/2之間的隨機時間內,該記錄是有效的。如果收到上層協議的肯定反 

饋,那麼記錄的有效期將延長。缺省值是30秒。 

delay_first_probe_time 

發現某個相鄰層記錄無效(stale)後,發出第一個探測要等待的時間。缺省值是5秒。 

gc_interval 

收集相鄰層記錄的無用記錄的垃圾收集程序的運行週期,缺省為30秒。 

gc_stale_time 

決定檢查一次相鄰層記錄的有效性的周期。當相鄰層記錄失效時,將在給它發送數據前,再解析一 

次。缺省值是60秒。 

gc_thresh1 

存在於ARP高速緩存中的最少層數,如果少於這個數,垃圾收集器將不會運行。缺省值是128。 

gc_thresh2 

保存在ARP高速緩存中的最多的記錄軟限制。垃圾收集器在開始收集前,允許記錄數超過這個數 

字5秒。缺省值是512。 

gc_thresh3 

保存在ARP高速緩存中的最多記錄的硬限制,一旦高速緩存中的數目高於此,垃圾收集器將馬上 

運行。缺省值是1024。 

locktime 

ARP記錄保存在高速緩存內的最短時間(jiffy數),以防止存在多個可能的映射(potential 

mapping)時, ARP高速緩存系統的顛簸(經常是由於網絡的錯誤配置而引起)。缺省值是1

秒。 

mcast_solicit 

在把記錄標記為不可抵達的之前,用多路廣播/廣播(multicast/broadcast)方式解析地址的 

最大次數。

 

缺省值是3。 

proxy_delay 

當接收到有一個請求已知的代理ARP地址的ARP請求時,在回應前可以延遲的jiffy(時間單位,見BUG)數目。這樣,以防止網絡風暴。缺省值是0.8秒。 

proxy_qlen 

能放入代理ARP地址隊列(proxy-ARP addresses)的數據包最大數目。缺省值是64。 

IXDBA.NET技術社區

retrans_time 

重發一個請求前的等待jiffy(時間單位,見BUG)的數目。缺省值是1秒。 

ucast_solicit 

詢問ARP端口監控程序前,試圖發送單探測(unicast probe)的次數。 (見app_solicit).缺省值是3秒。 

unres_qlen 

每個沒有被其它網絡層解析的地址,在隊列中可存放包的最大數目。缺省值是3.

即時留言

請注意: 你的 評論/意見 已提交或許會出現廷遲 / 在審閱後才刊登。 請不用再次提交你的意見。