Search squid archive

Re: Odd port behavior from squid

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/4/07, Pat Riehecky <prieheck@xxxxxxx> wrote:
I just put iptables on our squid box and noticed some very strange
activity (IPs have been changed to protect the innocent):

[44165032.820000] Dropped default (OUTPUT): IN= OUT=eth0
SRC=MY.PROXY.IP.ADDRESS DST=SOME.RANDOM.IP.ADDR LEN=40 TOS=0x00
PREC=0x00 TTL=64 ID=41807 DF PROTO=TCP SPT=3128 DPT=2660 WINDOW=7140
RES=0x00 ACK PSH FIN URGP=0

I have literally thousands of these where it looks like squid is
actively opening connections (well trying...) to the outside world.  The
intervals are somewhat random (and if you really care I can extrapolate
them).

It's probably a problem with iptables, not squid.
What's probably happening is that your iptables rules include some
rules that accept packets for sessions in a RELATED or ESTABLISHED
state. And session management is the problem, because sesssions have
their own timeout.

So what's happening?

Client connects to squid destination port 3128. TCP session state is
initialized in two different places: conntrack (for the firewalling
functions) and the local tcp/ip stack. Due to keepalive, the local
tcp/ip stack might hold the state for a very long time - the peer
might even be dead; conntrack ages things out more aggressively, and
eventually some session will end up being discarded by conntrack even
if they're still alive.
When squid fires the next TCP keepalive packet (2 hours is the default
TCP keepalive probe interval), the firewalling code will look for the
session in the conntrack session table, not find it and the following
iptables rules will just drop the packet.

In other words, nothing to worry about (but you should probably lower
your keepalive settings in squid AND tune your Linux TCP parameters)

--
   /kinkie

[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux