ECN mangling

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

 



Hi,
  Having run into problems with /proc/sys/net/ipv4/tcp_ecn being 1 for
Explicit Congestion Notification I first turned it off, and then found
the kernel configuration options for modules to allow me to mangle it
off per iptables rule.

  After some bashing of head against desk I found the syntax that works
to add a rule:

iptables -t mangle -A OUTPUT -o eth1 -p tcp -d IP/32 --match ecn --ecn-ip-ect 0 -j ECN --ecn-tcp-remove

This does indeed cause the appropriate flags to get stripped from the
packet.  Without it I see things like:

07:31:40.610299 80.4.77.247.33917 > 212.250.5.117.80: SWE [tcp sum ok] 301537362:301537362(0) win 5840 <mss 1460,sackOK,timestamp 2075414 0,nop,wscale 0> (DF) (ttl 64, id 45892, len 60)

With it I now see:

07:32:02.470307 80.4.77.247.33919 > 212.250.5.117.80: S [bad tcp cksum bf40!] 322522142:322522142(0) win 5840 <mss 1460,sackOK,timestamp 2077600 0,nop,wscale 0> (DF) (ttl 64, id 65470, len 60)

and the packets never seem to do much.  Of course once I'd added a few
-v's to tcpdump as above I can see the problem "[bad tcp cksum bf40!]".
It would seem that mangling the packet in this way is causing the tcp
checksum to become invalid.

  Is there something additional/different I should be doing in the
rules, or is this just a plain bug in the ECN modules?

-Ath
-- 
- Athanasius = Athanasius(at)miggy.org / http://www.miggy.org/
                  Finger athan(at)fysh.org for PGP key
	   "And it's me who is my enemy. Me who beats me up.
Me who makes the monsters. Me who strips my confidence." Paula Cole - ME

Attachment: pgp00229.pgp
Description: PGP signature


[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux