Hello,
Trying to debug a SMTP server that I am installing in a hosting center, I got a strange behavior when willing to connect to my server using port 587 (for authentication).
As I am using Wireshark for analyzing the connection from my mail client, I was stunned by the fact that the connection was always made using port 25, whatever I configure my mail client for using port 25 or port 587.
I spent a lot of time thinking that my mail client (actually Outlook Express) had misconfiguration or was broken, and I was most surprised again by the fact that even using telnet (that is, by the command “telnet myserver 587”, which is a common mean of testing connections), the connection was also made using port 25.
Actually, whatever I was doing, I was absolutely unable to have Wireshark showing any TCP packet sent using port 587:
If I type “telnet myserver 586”, or “telnet myserver 588”, I effectively get (unsuccessful, of course) packets sent to port 586 or 588, but if I type “telnet myserver 587”, all packets are sent using port 25!
After having spent a lot of time looking about why this happens, I tried the same commands on another computer, and found that on that computer, it works properly: packets are correctly sent using port 587.
One of the main difference between these computers is that the second does not have Avast installed like in the first one.
So I tried to stop Avast on the first computer, and the result was that things reverted to normal behavior: after stopping, packets are also correctly sent to port 587.
This means that, for an unknown reason, Avast (5.0.545) intercept TCP packets to port 587 and replaces them by packets sent to port 25!!!
This is a very odd behavior which is very likely to make users unable to send mails if they need to send them using port 587, as requested by many servers or ISPs, especially if they are roaming, and this is a so big problem that I will very need to completely uninstall Avast and replace it by another Antivirus.
Gingko