On Wed, Sep 07, 2005 at 02:39:20PM +0200, Patrick McHardy <[EMAIL PROTECTED]>
wrote:
> Andrew Morton wrote:
Thanks for your response!
> > tcp 6 52 SYN_SENT src=10.0.0.1 dst=129.13.162.95 sport=44320
> > dport=80 [UNREPLIED] src=129.13.162.95 dst=84.56.237.68 sport=80
> > dport=44320 mark=0 use=1
>
> It seems ip_conntrack did not like the SYN/ACK and marked it as invalid,
> NAT leaves the packet alone and the firewall resets the connection.
> Please try if loading the ipt_LOG module and executing
> "echo 255 > /proc/sys/net/ipv4/netfilter/ip_conntrack_log_invalid"
> gives more information
I think I have the LOG target compiled into the kernel. After the echo, I got
this within a matter of seconds:
printk: 614 messages suppressed.
ip_ct_tcp: bad TCP checksum IN= OUT= SRC=xxxxxxxxxxxx DST=84.56.231.206
LEN=105 TOS=0x00 PREC=0x00 TTL=53 ID=33989 DF PROTO=TCP SPT=119 DPT=41349
SEQ=495763142 ACK=177548929 WINDOW=56677 RES=0x00 ACK PSH URGP=0 OPT
(0101080A0986EF9D00E16123)
This is interesting, as the connection in question seems to work fine (at
least I can download news at 32kb/s, which is the rate limit on the other
side without much more than 32kb/s on my ppp link, so it is weird that
this many packets should have invalid tcp checksum. Maybe this is somehow
related?)
I then tried to create a masqueraded connection and got the expected
symptoms: correctly re-written packet leaves interface, return packet gets
RST.
During that time, I got more of the above messages, but none related to the
test connection.
I then stopped all traffic-generating programs to get an idle link and
retried. Still no log messages from the test conenction.
> >eth0:
> > 19:23:29.928470 IP 10.0.0.1.45611 > 129.13.162.95.80: S
> > 4113365634:4113365634(0) win 5840 <mss 1460>
> > 19:23:29.942246 IP 129.13.162.95.80 > 10.0.0.1.45611: S
> > 4161877683:4161877683(0) ack 4113365635 win 5840 <mss 1460>
> > 19:23:29.942313 IP 10.0.0.1.45611 > 129.13.162.95.80: . ack 1 win 5840
> >
> >inet:
> > 19:23:29.928249 IP 84.56.237.68.45611 > 129.13.162.95.80: S
> > 4113365634:4113365634(0) win 5840 <mss 1452>
> > 19:23:29.942199 IP 129.13.162.95.80 > 84.56.237.68.45611: S
> > 4161877683:4161877683(0) ack 4113365635 win 5840 <mss 1460>
> > 19:23:29.942332 IP 84.56.237.68.45611 > 129.13.162.95.80: . ack 1 win
> > 5840
> >
> >However, ICMP still is not masqueraded.
>
> Please also try this again with logging enabled.
No messages, either.
(As I wrote in another mail), I also found in the meantime that switching
off SACK only results in a correct handshake, further packets might and
usually will cause a RST.
> >Kernels that don't work:
> >
> > 2.6.13-rc7 (compiled with gcc-3.4 and 4.0.2 debian), 2.6.13 (gcc-4.02)
>
> Can you retest with 2.6.12.5 on 64bit so we can see if it is a new
> problem?
I hope that trying with 2.6.11, and getting the same problem (as I did in
the meantime), is even better than testing 2.6.12.5.
> So far I don't think its related to routed.
The weird thing is that it works on tap, but not on ethernet/ppp. Maybe
the kernel code gets some offset wrong?
--
The choice of a
-----==- _GNU_
----==-- _ generation Marc Lehmann
---==---(_)__ __ ____ __ [EMAIL PROTECTED]
--==---/ / _ \/ // /\ \/ / http://schmorp.de/
-=====/_/_//_/\_,_/ /_/\_\ XX11-RIPE
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html