Назад | Перейти на главную страницу

Проблема с дублированием электронной почты

Я заключил соглашение о хостинге с уважаемым хостинг-провайдером на пару серверов с выходом в Интернет. Мы развернули на этих серверах несколько приложений, которые отправляют нам различные электронные письма для отчетов.

Контекст:

Каждый сервер работает под управлением Windows Server 2003 R2 с установленной службой SMTP IIS 6.0.

Каждое приложение настроено на использование локального экземпляра IIS для отправки электронной почты.

Внешний IP-адрес каждого сервера привязан к определенному домену, например:

Эти электронные письма отправляются с доменного имени компании, а не с доменного имени размещенных серверов (например: reporting@mycompanydomain.com)

Симптомы:

Небольшое количество (<1%) электронных писем, отправленных из этих приложений, похоже, дублируются. Это точные дубликаты с точки зрения содержания и заголовки сообщений.

Исправление:

Я связался со своим хостинг-провайдером, и они сказали мне, что это обычная проблема, и посоветовали мне:

  1. Измените HELO-ответ службы вашего почтового сервера на полное доменное имя (server1.mydomain.com && server2.mydomain.com)
  2. Создайте запись DNS A, которая преобразует полное доменное имя вашего почтового сервера в основной IP-адрес отправляющего почтового сервера.
  3. Создайте запись PTR, которая разрешает ваш основной IP-адрес обратно в полное доменное имя вашего почтового сервера.
  4. В файле зоны DNS отправляющего домена (mycompanydomain.com) добавьте соответствующую запись SPF для размещенных серверов. например: v = spf1 a mx include: mydomain -all

Проблема продолжается:

Я внес все изменения, как описано выше, я немного колебался, потому что эти шаги, казалось, предполагали, что они были больше для предотвращения блокировки ваших сообщений, чем для предотвращения их дублирования - но я, конечно, не эксперт в этих вопросах.

Прошло 5 дней с тех пор, как я применил это исправление, но проблема все еще сохраняется.

Я уверен, что эти проблемы не являются ошибкой в ​​программном обеспечении, потому что это 4 разных приложения, установленных на 2 разных серверах, и все они демонстрируют такое странное поведение. Такое поведение также не наблюдалось в нашей среде UAT.

Правильно ли мои хозяева предложили это исправление? Если нет, то кто-нибудь знает, что может быть причиной этой проблемы?

Большое спасибо

Я использую более 20 таких устройств - W2K3R2 с IIS SMTP и никогда не видел такого поведения. Как вы и подозревали, все эти шаги в их «исправлении» были направлены на то, чтобы повысить вероятность того, что ваши сообщения будут получены на другом конце, а не заблокированы как спам.

Вы на 100% уверены, что дублирование происходит в источнике? В прошлом у меня были проблемы с созданием дубликатов писем в почтовой системе получателя. Если бы это происходило, все атрибуты были бы такими же.

Я предполагаю, что я бы также запустил ведение журнала SMTP IIS на размещенных машинах и просмотрел эти журналы. Там может быть какая-то подсказка. Если IIS отправляет 2 копии сообщения, вы увидите 2 записи в этом журнале. Если там две записи, вероятно, виноват механизм, который вы используете для отправки сообщений в IIS, который вы не обсуждали подробно. Как именно вы это делаете?

Хорошо, я здесь играю в авокадо дьявола, но на всякий случай я упомяну об этом - вы используете какую-то технику очереди для отправки писем в своем приложении? Я спрашиваю, если вы используете архитектуру в стиле служебной шины, и, возможно, сообщения обрабатываются, таким образом отправляя электронные письма, но по какой-то причине возникает исключение, которое означает, что служебная шина повторяет обработку сообщения.

Или что-то. Я, наверное, лаю не на ту акацию, но об этом стоит упомянуть. :)