Patrick wrote:
> Hi,
>
> we have a problem with our router. It says:
>
> ip_conntrack: table full, dropping packet
>
> but in ip_conntrack there are only 2000 or less entries.
>
> The value of ip_conntrack_max is 8192. When we change it to a higher
value
> e.g. 16384 the kernel stops dropping. But after a few days it will
drop
> again.
>
> Our system is a PIII 1.2 GHz with 128MB ram and we are doing nat for
200
> clients. The version of the kernel is 2.4.21.
>
> Any ideas?
Be warned, these are the guesses of someone who has not had to support
connection tracking for 200+ hosts.
First, if you take a look at the source code in,
..../net/ipv4/netfilter/ip_conntrack_core.c (~ line 500) you will see
that not every available slot has to be filled before getting this
message. It's been several years since I've tracked down the various
constants and function calls to figure out "exactly" what's going on,
but it _does_ depend on just how your firewall/iptable rules are set
up, not simply whether every slot is used.
You've already tried reconfiguring the connection tracking table size,
but look here for some better idea on how/what you can adjust it (ie.,
hash table and list sizes):
http://www.wallfire.org/misc/netfilt...track_perf.txt
You probably need to monitor just what kind of connections are being
made that generate this message. One or more particular IPs?
Ports/services? It may be that simply enlarging the connection table
is _not_ the best or only remedy you need.
Filling the connection table _is_ a potential source of DoS (intended
or not), so take a close look at your filtering policies. Googling
Groups shows that conntrack table overflow is more prevalent in EU.
Are there some connections you should not allow?
In any case, you'll be well served to monitor/classify the IP traffic,
then devise a multi-layered plan. IIRC, some of the "dedicated"
firewall distros make some kernel source changes to accommodate more
"optimal" performance for connection tracking. It can be memory
intensive.
Wish I had a "quick fix", but as with most networking problems, the
"fix" depends on specific conditions.
good luck,
prg