Я не слишком уверен, что это лучшее место для постановки этого вопроса (или на сервере). Я использую сторонний компонент .NET SMTP для отправки электронной почты непосредственно на почтовый сервер получателя. Мне нужно сделать это, чтобы получить результат доставки в реальном времени. Отправка через другой SMTP-сервер требует, чтобы я получал результат асинхронно с помощью отчетов DSN, что слишком сложно для природы моего приложения.
В любом случае, у меня проблема с целевым SMTP-сервером, возвращающим код ошибки, который не совпадает с сообщением об ошибке. Таким образом, я не могу пометить доставку как жесткий или мягкий отскок. Например. Код ошибки ответа - 450 (означает, что почтовый ящик недоступен), но ответное сообщение связано с тайм-аутом. Когда я снова отправляю то же сообщение, оно прошло. Очевидно, проблема с тайм-аутом для предыдущей отправки.
Я также понял, что проблема может быть не в принимающем SMTP-сервере, а в брандмауэре / прокси (как вы его называете), который защищает сервер.
Кто-нибудь сталкивался с подобной проблемой и как с ней бороться.
PS: я постараюсь предоставить больше подробностей из своего журнала, когда вернусь в свой офис.