Wednesday, August 03, 2005 5:13 PM
philipnet
Exchange SMTP protocol errors
We're still reeling from the Exchange 5.5 to 2003 migration.
The guy who did the migration is back in this week and I so I'm able to get a few answers answers to my questions.
Anyway, yesterday it was brought to my attention that emails to certain domains weren't getting through. Emails to a sub-section of these domains went through if you kicked the outgoing email queue in exchange - but (a) it was a pain to keep doing this and (b) it didn't solve the problem for the rest of the troublesome ones.
A colleague pulled up ethereal and tried talking SMTP to their mail server. But all we found was that they had an application proxy/firewall/device sitting between their exchange 5 server and the outside world. As had another problem domain.
But that didn't explain why their system wasn't letting our mail through.
Getting wind of this problem I cranked SMTP logging up to maximum. Of course SMTP logging doesn't live in the Diagnostics Logging tab with the logging options, you find it in the properties for each <Server> -> Protocol -> SMTP -> <SMTP virtual server> . If you tick "Enabled logging", click on properties and then choose the "Advanced" tab you can then specify what gets logged by Exchange. I turned on time and a few other options and then Exchange started logging really useful information. in \\ServerName\c$\Windows\System32\LogFiles\SMTPSvc1 .
After finding the logged transcript with the problem email servers I saw this message: " 421+5.5.2+Syntax+error+(command+line+too+long)". What's going on I thought? A bit of googling lead me to the conclusion that their server wasn't accepting our "EHLO" greeting, for some strange reason. Possibly because they were running ISA in front of Exchange 5? Google also lead me to the answer: use HELO rather than EHLO when talking to those mail servers - but how do I setup a SMTP connector?
That search lead me to this http://www.msexchange.org/tutorials/Configuring-SMTP-Connector.html . It set the addressing right (to capture emails to the a troublesome domain), and the advanced options to use HELO rather than EHLO, and Exchange even showed this connector having emails in it in the queues - but kicking that into action didn't deliver the emails! The server logs showed that Exchange was still using EHLO!
So what to do? It was almost going home time and I really wanted to get this working before I left. So in one last-ditch attempt to get it going, I modified the SMTP connector to handle all emails going out (I set the Address Space to "*").
Suddenly all these held up message went. I checked the logs; the emails had been delivered successfully to the troublesome domains.
So I reported this all to my manager, and left :-D .