Sendmail problems on RHEL5 (and solution)

Denis Beauchemin Denis.Beauchemin at USherbrooke.ca
Tue Sep 11 13:55:02 IST 2007


Plant, Dean a écrit :
> Denis Beauchemin wrote:
>   
>> Hello all,
>>
>> Ever since I switched to my new RHEL5 MS servers I was noticing many
>> errors like these:
>> Sep  7 00:10:36 132.210.244.13 sendmail[6929]: l873tB1s006929:
>> collect: premature EOM: unexpected close
>> Sep  7 00:10:36 132.210.244.13 sendmail[6929]: l873tB1s006929:
>> collect: unexpected close on connection from pobox.sfu.ca,
>> sender=<someone at sfu.ca> 
>>
>> I could get thousands of these in a day and they resulted in delivery
>> delays that were starting to annoy seriously my users because they
>> were coming from legitimate servers.  I was also annoyed because the
>> boxes 
>> were running with more and more sendmail processes.
>>
>> We finally tracked it down to a faulty TCP/IP default setup on RHEL5!
>> To correct the problem I had to:
>> sysctl -w net.ipv4.tcp_wmem="4096 16384 131072"
>> sysctl -w net.ipv4.tcp_rmem="4096 87380 174760"
>>
>> and modify /etc/sysctl.conf :
>> net.ipv4.tcp_wmem="4096 16384 131072"
>> net.ipv4.tcp_rmem="4096 87380 174760"
>>
>> For some unknown reason the TCP/IP stack was telling some remote hosts
>> to use a really small window size and this resulted in some equipment
>> down the line breaking the connection.  It happened more often with
>> big emails (the ones with attachments).
>>
>> I don't know if this bug is also present on CentOS5, but it might
>> be... 
>>
>> The following commands might help you find out if you have the problem
>> (quick hack):
>> grep "unexpected close on connection" /var/log/maillog | perl -ne '
>>   next unless /collect: unexpected close on connection from ([^,]+),/;
>>   $f{$1}++;a broken
>>   END{
>>     foreach $i (sort keys %f){
>>       printf "%25s : %d\n", $i, $f{$i};
>>     }
>>   }' | sort -k3n | tail
>>
>> If you see some servers with hundreds of errors, you may have the
>> problem... 
>>
>> Denis
>>     
>
> This might be related, when we moved to CentOS 5 we had issues with TCP
> connections stalling and traced this down to a broken firewall and TCP
> window scaling. This only happened when transmitting larger amounts of
> data.
>
> This is a known symptom of some broken firewalls which rewrite (rather
> than remove) this option. This means that one end thinks a different
> window scale is being used to the other, and things break.
>
> You can echo 0 > /proc/sys/net/ipv4/tcp_window_scaling on the RHEL 5 box
> to see if this is affecting you as this was a workaround until we had a
> patch from the firewall vendor.
>
> Dean
>   
Dean,

We began by doing what you suggest but it didn't correct the problem.  
As for the firewall we are using iptables on the servers.

Denis

-- 
   _
  °v°   Denis Beauchemin, analyste
 /(_)\  Université de Sherbrooke, S.T.I.
  ^ ^   T: 819.821.8000x62252 F: 819.821.8045




More information about the MailScanner mailing list