* TCP/IPv6 broken in Linux 2.5.64?
@ 2003-03-18 13:11 Erik Hensema
2003-03-18 13:54 ` Maciej Soltysiak
2003-03-18 16:25 ` bert hubert
0 siblings, 2 replies; 7+ messages in thread
From: Erik Hensema @ 2003-03-18 13:11 UTC (permalink / raw)
To: netdev
Hi,
I'm trying to upgrade to Linux 2.5.x from 2.4.x. It seems to be working
fine, except for IPv6: a TCP session can be established, but I can't send
data. I can receive it though.
This is a tcpdump session of me telnetting to the smtp port of my server,
with is on local ethernet; native ipv6:
14:01:24.169321 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: S 3441486378:3441486378(0) win 5760 <mss 1440,sackOK,timestamp 3067201 0,nop,wscale 0>
14:01:24.169532 dexter.ipv6.hensema.net.smtp > bender.ipv6.hensema.net.32926: S 2141989668:2141989668(0) ack 3441486379 win 5712 <mss 1440,sackOK,timestamp 241707598 3067201,nop,wscale 0>
14:01:24.170104 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: . ack 1 win 5760 <nop,nop,timestamp 3067202 241707598>
14:01:24.187583 dexter.ipv6.hensema.net.47911 > bender.ipv6.hensema.net.ident: S 2130642408:2130642408(0) win 5760 <mss 1440,sackOK,timestamp 241707600 0,nop,wscale 0>
14:01:24.187612 bender.ipv6.hensema.net.ident > dexter.ipv6.hensema.net.47911: R 0:0(0) ack 2130642409 win 0
14:01:24.198246 dexter.ipv6.hensema.net.smtp > bender.ipv6.hensema.net.32926: P 1:87(86) ack 1 win 5712 <nop,nop,timestamp 241707601 3067202>
14:01:24.198285 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: . ack 87 win 5760 <nop,nop,timestamp 3067230 241707601>
14:01:27.397607 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3070430 241707601>
14:01:27.598549 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3070631 241707601>
14:01:28.199460 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3071232 241707601>
14:01:29.223402 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3072256 241707601>
14:01:31.015042 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3074048 241707601>
14:01:34.342488 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3077376 241707601>
14:01:40.997436 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3084032 241707601>
14:01:53.795498 bender.ipv6.hensema.net.32925 > dexter.ipv6.hensema.net.smtp: P 0:6(6) ack 1 win 5760 <nop,nop,timestamp 3096832 241706937>
14:01:54.051386 bender.ipv6.hensema.net.32926 > dexter.ipv6.hensema.net.smtp: P 1:7(6) ack 87 win 5760 <nop,nop,timestamp 3097088 241707601>
I do see the SMTP greeting. However, when I send a RSET, there's no response
from the server.
IPv4 is working fine. icmpv6/ipv6 and udp/ipv6 too.
bender is running linux 2.5.64. dexter is running linux 2.4.18, mostly the
SuSE 8.0 version (that is: quite heavily patched).
--
Erik Hensema (erik@hensema.net)
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: TCP/IPv6 broken in Linux 2.5.64?
2003-03-18 13:11 TCP/IPv6 broken in Linux 2.5.64? Erik Hensema
@ 2003-03-18 13:54 ` Maciej Soltysiak
2003-03-18 16:25 ` bert hubert
1 sibling, 0 replies; 7+ messages in thread
From: Maciej Soltysiak @ 2003-03-18 13:54 UTC (permalink / raw)
To: Erik Hensema; +Cc: netdev
Hi,
> bender is running linux 2.5.64. dexter is running linux 2.4.18,
Are you a cartoons fan ? Dexter's laboratory, Futurama ? That's a cool
way to name hosts. I am inspired :)
Regards,
Maciej
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: TCP/IPv6 broken in Linux 2.5.64?
2003-03-18 13:11 TCP/IPv6 broken in Linux 2.5.64? Erik Hensema
2003-03-18 13:54 ` Maciej Soltysiak
@ 2003-03-18 16:25 ` bert hubert
2003-03-18 16:51 ` bert hubert
2003-03-20 15:49 ` kuznet
1 sibling, 2 replies; 7+ messages in thread
From: bert hubert @ 2003-03-18 16:25 UTC (permalink / raw)
To: Erik Hensema; +Cc: netdev
On Tue, Mar 18, 2003 at 02:11:04PM +0100, Erik Hensema wrote:
> Hi,
>
> I'm trying to upgrade to Linux 2.5.x from 2.4.x. It seems to be working
> fine, except for IPv6: a TCP session can be established, but I can't send
> data. I can receive it though.
I can confirm this. 2.5.65 can connect to other hosts out there, like ipv6
irc servers, or an IPv6 zonetransfer. However, when I try to ssh from 2.5.65
to another 2.5.65, nothing happens.
2.4.18 can also ssh to 2.5.65.
So we have:
to: 2.4.18 2.5.65
from:
2.4.18 OK OK
2.5.65 OK ERROR
tcpdump from 2.5.65 to 2.5.65:
25.987220 hostA.33180 > hostB.22: S 2721590261:2721590261(0) win 5760
<mss 1440,sackOK,timestamp 15005149 0,nop,wscale 0>
25.987490 hostB.22 > hostA.33180: S 2377513523:2377513523(0)
ack 2721590262 win 5712
<mss 1440,sackOK,timestamp 5200381 15005149,nop,wscale 0>
25.987622 hostA.33180 > hostB.22: . ack 1 win 5760
<nop,nop,timestamp 15005149 5200381>
25.993273 hostB.22 > hostA.33180: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 5200387 15005149>
26.193443 hostB.22 > hostA.33180: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 5200588 15005149>
26.757236 hostB.22 > hostA.33180: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 5201152 15005149>
The originating host does not ACK the received data, it appears. No IPSEC
is involved with this.
Regards,
bert
--
http://www.PowerDNS.com Open source, database driven DNS Software
http://lartc.org Linux Advanced Routing & Traffic Control HOWTO
http://netherlabs.nl Consulting
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: TCP/IPv6 broken in Linux 2.5.64?
2003-03-18 16:25 ` bert hubert
@ 2003-03-18 16:51 ` bert hubert
2003-03-20 15:49 ` kuznet
1 sibling, 0 replies; 7+ messages in thread
From: bert hubert @ 2003-03-18 16:51 UTC (permalink / raw)
To: Erik Hensema, netdev
On Tue, Mar 18, 2003 at 05:25:32PM +0100, bert hubert wrote:
> So we have:
>
> to: 2.4.18 2.5.65
> from:
> 2.4.18 OK OK
> 2.5.65 OK ERROR
Ok, here is a counter example of 2.5.65 happily talking to 2.5.65, so it
sometimes does work:
33.933107 hostC.33255 > hostB.22: SWE 3663286543:3663286543(0) win 5680
<mss 1420,sackOK,timestamp 19198944 0,nop,wscale 0>
33.933203 hostB.22 > hostC.33255: S 3554639364:3554639364(0) ack 3663286544
win 5712 <mss 1440,sackOK,timestamp 15793123 19198944,nop,wscale 0>
33.999407 hostC.33255 > hostB.22: . ack 1 win 5680
<nop,nop,timestamp 19199006 15793123>
34.007239 hostB.22 > hostC.33255: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 15793197 19199006>
34.072108 hostC.33255 > hostB.22: . ack 41 win 5680
<nop,nop,timestamp 19199081 15793197>
34.091633 hostC.33255 > hostB.22: P 1:40(39) ack 41 win 5680
<nop,nop,timestamp 19199081 15793197>
34.097058 hostB.22 > hostC.33255: . ack 40 win 5712
<nop,nop,timestamp 15793286 19199081>
Here is a macos X laptop, hostD trying and failing talk to hostB, which runs
2.5.65:
16.829237 hostD.56023 > hostB.22: S 3755233012:3755233012(0) win 32768
<mss 1440,nop,wscale 0,nop,nop,timestamp 3371673393 0>
16.829482 hostB.22 > hostD.56023: S 3776737964:3776737964(0) ack 3755233013
win 5712 <mss 1440,nop,nop,timestamp 6571699 3371673393,nop,wscale 0>
17.296953 hostD.56023 > hostB.22: . ack 1 win 32844
<nop,nop,timestamp 3371673394 6571699>
17.301934 hostB.22 > hostD.56023: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 6572172 3371673394>
18.953105 hostB.22 > hostD.56023: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 6573824 3371673394>
21.768126 hostB.22 > hostD.56023: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 6576640 3371673394>
27.398163 hostB.22 > hostD.56023: P 1:41(40) ack 1 win 5712
<nop,nop,timestamp 6582272 3371673394>
Closer inspection shows:
17:47:39.206188 HostB.22 > HostD.56030: P [bad tcp cksum 407f!] 1:41(40)
ack 1 win 5712 <nop,nop,timestamp 6894188 3371674038> (len 72, hlim 64)
Note the bad checksum! It appears hostB is the culprit here, the one
constant factor in the entire story. HostB is a Pentium PRO, the other
machines aren't. Perhaps this might be it?
This dump was run on hostB, so no chance of bad media there.
Let me know if I can do more research - icmp6 works just fine.
Regards,
bert
--
http://www.PowerDNS.com Open source, database driven DNS Software
http://lartc.org Linux Advanced Routing & Traffic Control HOWTO
http://netherlabs.nl Consulting
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: TCP/IPv6 broken in Linux 2.5.64?
2003-03-18 16:25 ` bert hubert
2003-03-18 16:51 ` bert hubert
@ 2003-03-20 15:49 ` kuznet
2003-03-20 16:31 ` bert hubert
1 sibling, 1 reply; 7+ messages in thread
From: kuznet @ 2003-03-20 15:49 UTC (permalink / raw)
To: bert hubert; +Cc: netdev
Hello!
> irc servers, or an IPv6 zonetransfer. However, when I try to ssh from 2.5.65
Try this. I have just found this lost patch, it is from 2.4 tree, but
it should fit to 2.5 as well.
Alexey
===== net/ipv6/tcp_ipv6.c 1.19 vs edited =====
--- 1.19/net/ipv6/tcp_ipv6.c Thu Jan 23 21:14:18 2003
+++ edited/net/ipv6/tcp_ipv6.c Thu Mar 20 18:44:17 2003
@@ -983,7 +983,7 @@
struct ipv6_pinfo *np = &sk->net_pinfo.af_inet6;
if (skb->ip_summed == CHECKSUM_HW) {
- th->check = csum_ipv6_magic(&np->saddr, &np->daddr, len, IPPROTO_TCP, 0);
+ th->check = ~csum_ipv6_magic(&np->saddr, &np->daddr, len, IPPROTO_TCP, 0);
skb->csum = offsetof(struct tcphdr, check);
} else {
th->check = csum_ipv6_magic(&np->saddr, &np->daddr, len, IPPROTO_TCP,
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: TCP/IPv6 broken in Linux 2.5.64?
2003-03-20 15:49 ` kuznet
@ 2003-03-20 16:31 ` bert hubert
2003-03-20 18:10 ` Erik Hensema
0 siblings, 1 reply; 7+ messages in thread
From: bert hubert @ 2003-03-20 16:31 UTC (permalink / raw)
To: kuznet; +Cc: netdev
On Thu, Mar 20, 2003 at 06:49:49PM +0300, kuznet@ms2.inr.ac.ru wrote:
> Hello!
>
> > irc servers, or an IPv6 zonetransfer. However, when I try to ssh from 2.5.65
>
> Try this. I have just found this lost patch, it is from 2.4 tree, but
> it should fit to 2.5 as well.
This has solved my problem 100%. The earlier mentioned hostA and hostB can
now cheerfully connect to eachother. Everything else I try works too.
So I suggest this be sent linus-wards. Thanks!
Regards,
bert
--
http://www.PowerDNS.com Open source, database driven DNS Software
http://lartc.org Linux Advanced Routing & Traffic Control HOWTO
http://netherlabs.nl Consulting
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: TCP/IPv6 broken in Linux 2.5.64?
2003-03-20 16:31 ` bert hubert
@ 2003-03-20 18:10 ` Erik Hensema
0 siblings, 0 replies; 7+ messages in thread
From: Erik Hensema @ 2003-03-20 18:10 UTC (permalink / raw)
To: bert hubert; +Cc: netdev
On Thu, Mar 20, 2003 at 05:31:07PM +0100, bert hubert wrote:
> On Thu, Mar 20, 2003 at 06:49:49PM +0300, kuznet@ms2.inr.ac.ru wrote:
> > Hello!
> >
> > > irc servers, or an IPv6 zonetransfer. However, when I try to ssh from 2.5.65
> >
> > Try this. I have just found this lost patch, it is from 2.4 tree, but
> > it should fit to 2.5 as well.
>
> This has solved my problem 100%. The earlier mentioned hostA and hostB can
> now cheerfully connect to eachother. Everything else I try works too.
>
> So I suggest this be sent linus-wards. Thanks!
I can confirm that this fixed my IPv6 problems on 2.5.x.
--
Erik Hensema (erik@hensema.net)
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2003-03-20 18:10 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-18 13:11 TCP/IPv6 broken in Linux 2.5.64? Erik Hensema
2003-03-18 13:54 ` Maciej Soltysiak
2003-03-18 16:25 ` bert hubert
2003-03-18 16:51 ` bert hubert
2003-03-20 15:49 ` kuznet
2003-03-20 16:31 ` bert hubert
2003-03-20 18:10 ` Erik Hensema
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).