Martijn de Munnik: > > On Jan 20, 2010, at 9:28 PM, Victor Duchovni wrote: > > > On Wed, Jan 20, 2010 at 03:22:56PM -0500, Wietse Venema wrote: > > > >> The broken router then throws away the bytes with higher sequence > >> numbers than 14233. > >> > >> Workaround: turn off window scaling support on the sender's kernel. > > > > This problem is sufficiently common, that on Linux MTAs I always add: > > > > net.ipv4.tcp_window_scaling = 0 > I'm running Solaris 10 x86 and I did > > sudo ndd -set /dev/tcp tcp_wscale_always 0 > > before I did this the value was 1. After I did this I flushed the > queue but the messages stay stuck in the queue with the same > problem. I'm not sure this is the right kernel parameter for > Solaris?
You can do ndd /dev/tcp \? to find out what parameters are supported. On my Solaris9 and Solaris10 test boxes it is called tcp_wscale_always. According to Solaris10 documentation: When this parameter is enabled, which is the default setting [since Solaris10], TCP always sends a SYN segment with the window scale option, even if the window scale option value is 0. So, please make another recording and report if setting this to 0 causes Solaris to stop sending "wscale 0" options. If the sender does not send a wscale option, then the receiver is not supposed to send a wscale option, either. Your tcpdump recording should confirm that. > /etc/system has no specific setting for tcp, so everything is > default Solaris 10. > > Wietse, the broken router you mentioned, could that be a Cisco > PIX on the receivers site? I maintain no list of CISCO PIX firewall bugs. It can also be a router at your end. Never exclude that possibility. > Jan 20 22:58:43 stevie.youngguns.nl postfix/smtp[18765]: [ID 197553 > mail.info] 8A5553BA0C: enabling PIX workarounds: disable_esmtp > delay_dotcrlf for mx2.amsterdam.nl[145.222.14.10]:25 That's a PIX bug workaround for the fact that their engone parses only one packet at a time and therefore misses SMTP commands and <CR><LF>.<CR>LF> when these sit across packet boundaries. Wietse