Я настроил свой сервер Exchange на доверие моему IP-адресу, как указано здесь: https://serverfault.com/a/207583/101328 (Разрешает мой IP-адрес, без аутентификации, установлен «Внешне безопасный»)
Однако это все равно не работает! Происходит следующее:
Server: 220 server.mydomain.com Microsoft ESMTP MAIL Service ready at Thu, 1 Dec 2011 19:26:23 -0500
//This actually has my ip address, not x's
MyClient: HELO [xxx.xxx.xxx.xxx]
И тогда мой клиент просто зависает навсегда. Есть идеи, что не так и что я могу сделать, чтобы это исправить?
Я подключаюсь к серверу обмена через порт 25.
Что стоит попробовать:
1) Остановите и перезапустите коннектор SMTP. Если вы настроили исключение без перезапуска, скорее всего, изменения не повлияют.
2) Из клиента Telnet, такого как Putty, или из клиента Telnet из командной строки попробуйте передать ему SMTP-диалог - сначала с сервера, а затем на ПК, на котором работает ваш клиент. Я рекомендую создать текстовый файл, используя в качестве руководства пример из этой вики: http://en.wikipedia.org/wiki/Smtp Прокрутите вниз до раздела «Пример транспорта SMTP».
Вы кодируете своего собственного клиента? Если да, то, вероятно, вы не соблюдаете раздел 2.3.7 RFC 2821:
Строки состоят из нуля или более символов данных, заканчивающихся символом ASCII последовательности «CR» (шестнадцатеричное значение 0D), за которым сразу следует символ ASCII «LF» (шестнадцатеричное значение 0A). ... Соответствующие реализации НЕ ДОЛЖНЫ распознавать или генерировать любые другие символы или последовательности символов в качестве признака конца строки.