База знаний PMTA›Сценарий

Классификация отказов

записей в сценарии: 58
bounce-after<domain>критичноХаб задаёт самДирективаДо этого момента письмо живёт в очереди и занимает место на диске.records<acct-file>критичноХаб задаёт самДирективаСписок из восьми возможных видов записей учёта; умолчание — доставки и локальные отказы.bounce-upon-5xx-greeting<domain>Хаб задаёт самДирективаВендорское умолчание — да, и одного неверно настроенного сервера в списке MX хватает, чтобы сжечь очередь.bounce-upon-no-mx<domain>Хаб задаёт самДирективаПринимает не только да и нет: интервал даёт домену время, за которое узел успеет попробовать адрес напрямую.enable-tq-record-for-proxy-failure<domain>ДирективаЗаносит сбои соединения с прокси в записи учёта вида tq; по умолчанию выключено и игнорируется без этого вида записей.html-edit-error-mode<signals>ДирективаОтказать в доставке или отправить как есть, когда разбор HTML сорвался; умолчание — отказать.mail-from<rewrite-list>Хаб задаёт самДирективаМеняет адрес из команды SMTP MAIL FROM — тот, на который вернётся отказ и который проверяет SPF; заголовок From это правило не трогает.reject-spf-check-fail<source>ДирективаСамый однозначный из трёх исходов: владелец домена сказал, что с этого адреса слать нельзя.reject-spf-check-permerror<source>ДирективаОтправитель ничего не запрещал — он ошибся в синтаксисе; умолчание всё равно отвергает.reject-spf-check-temperror<source>ДирективаЕдинственный из трёх исходов, где отказ временный: отправителю предлагают повторить.suppression-lists<source>ДирективаПодключает один или несколько именованных списков адресов; получатель из списка отвергается при подаче или отбивается позже, смотря по приёму неверных получателей.verp-default<source>ДирективаВключение на стороне подачи: действует на всё, что подано этим источником.assume-delivery-upon-data-termination-timeout<domain>Хаб задаёт самДирективаСтавка на то, что письмо дошло: дублей не будет, но и правды в учёте тоже.body-pattern-file<email-patterns>ДирективаРегулярное выражение с именованными группами, вытаскивающее поля учёта из тела нестандартного отчёта; строка повторяется.bounce-upon-transfer-failure<domain>ДирективаВыбор между риском дубля у получателя и риском не доставить письмо вовсе.disable-mx-rollup<domain>ДирективаОтключает для домена оба сведения сразу — и ручное по списку, и автоматическое.pattern-list<source>Хаб задаёт самДирективаПодключает к источнику именованный список правил; список должен быть объявлен в файле раньше, и подключить можно только один.retry-upon-new-mail<domain>ДирективаОбходит расписание повторов: каждое новое письмо в очереди назначает попытку немедленно.verp-default<domain>ДирективаТо же включение, но точечное: только для писем к этому домену.bounce-upon-pix-transfer-failure<domain>ДирективаУзкий случай общей строки: срабатывает, если в приветствии приёмника не меньше десяти звёздочек.log-match-info<email-patterns>ДирективаПишет в журнал имя файла с образцом, который совпал с разобранным отчётом; по умолчанию выключено.pix-bug-workaround<domain>ДирективаВключено по умолчанию: обход известной неполадки, из-за которой письма задваиваются.track-jobs<domain>ДирективаВключает учёт заданий по приёмнику и их показ на его странице в веб-мониторе; по умолчанию выключено.Категория отказа в учёте — настраиваемая, а не вендорскаякритичноМеханизмСтрока bounceCat в каждой записи учёта берётся из списка образцов, который можно дополнить своими правилами и своими названиями категорий.Разбор отказов, пришедших письмомкритичноМеханизмОтчёты об отказах, приходящие письмом, разбираются отдельным обработчиком — и он работает раньше обработчика жалоб.Два обработчика входящих отчётов и что с ними делатьМеханизмОтказы письмом и жалобы разбираются двумя одинаково устроенными блоками; у каждого свой список адресов и своя пара решений о судьбе письма.Что делать с принятым письмомМеханизмЧто узел делает с принятым входящим письмом: пересылает, кладёт в файл, гасит, передаёт программе или разбирает как отказ или жалобу.Формат жалоб одного крупного приёмникаМеханизмЖалобы Hotmail приходят не в стандартном ARF: чтобы MTA их опознал и записал получателя, нужен вариант с вложением RFC и заголовок X-HmXmrOriginalRecipient.Диалект регулярных выраженийМеханизмРегулярные выражения конфигурации — совместимые с Perl, на библиотеке PCRE: так пишут выбор адреса отправки, правила ответов, категории отказов, списки адресов и заголовки подписи.Второй формат отчёта о жалобеМеханизмЖалобы в формате XARF — JSON вместо ARF: основные поля MTA заполняет сам, а прочие достают путём xarf.<путь>.Отчёты, которые MTA не понимает самМеханизмПриёмники, отдающие отказы и жалобы в нестандартном виде, разбираются своими образцами; извлечённые поля ложатся в учёт наравне с обычными.На какие исходы приходит отчёт — решает каждый получательМеханизмДля каждого получателя отдельно запрашивается отчёт об успехе, о неудаче, о задержке, о любом их сочетании или ни о чём; умолчание — только неудача.Что возвращать в отчёте об отказеМеханизмЧто вкладывать в отчёт об отказе: письмо целиком или только его заголовки.Обратный адрес, в который вписан получательМеханизмОтказ приходит на уникальный адрес, и разбирать его содержимое не нужно.Национальные алфавитыМеханизмФайлы конфигурации — в UTF-8, поэтому национальные домены и адреса пишут как есть; письмо с национальным адресом в конверте уйдёт, только если приёмник поддерживает SMTPUTF8.Снять адрес отправки — и что станет с его очередьюкритичноПроцедураОпределение удаляется правкой и перезагрузкой; письма, всё ещё привязанные к снятому адресу, отказывают со своим кодом.<smtp-pattern-list>Блок конфигурацииОбразцы, сопоставляемые с ответами приёмника, — тот самый спусковой крючок, на который реагирует щадящий режим.Отбито окончательнокритичноЗапись учётаПолучатель окончательно не получил письмо — либо приёмник отказал насовсем, либо узел сам отбил письмо по истечении срока.Разобранный отказ извнеЗапись учётаПисьмо-отчёт об отказе пришло на настроенный обработчик и было разобрано.Запрос имени не завершился — и вывод не делаетсяКод ошибкиЗапрос в службу имён не удался, обычно по времени ожидания; MTA намеренно не отбивает письмо на таком отказе.Неправильно настроен приёмникКод ошибкиОтказ вызван настройкой удалённой стороны, а не нашей.Неполадка соединенияКод ошибкиСоединение с приёмником не удалось или оборвалось.Домена не существуетКод ошибкиДомен получателя не найден или не существует. Отказ про правую часть адреса, а не про левую.Адреса не существуетКод ошибкиПриёмник сказал, что такого получателя у него нет. Самый однозначный из отказов: он про адрес, а не про письмо, не про нас и не про сеть.Придержано по содержимомуКод ошибкиОтвергнуто из-за того, что внутри письма: ссылка, вложение, разметка.Ящик отключён или просроченКод ошибкиЯщик когда-то был, но его закрыли, заморозили или он истёк. Формально адрес существует, практически он мёртв.Проблема с доменом отправителяКод ошибкиОтказ вызван записями нашего домена: их нет или они неверны.Истёк срок отказаКод ошибкиПисьмо не доставили за отведённое время, и оно отбито по сроку.Хост подключился и молчитКод ошибкиСоединение установилось, ответа не последовало.ПрочееКод ошибкиОтказ, не подошедший ни под одну категорию.Отказ по правилам приёмникаКод ошибкиПриёмник отказал по своим правилам — не по содержимому и не по адресу.Нарушение порядка разговораКод ошибкиОшибка синтаксиса или последовательности команд.Ящик переполненКод ошибкиУ получателя кончилось место. Ящик жив, письмо просто некуда положить.Приёмник не согласился пересылатьКод ошибкиУдалённый сервер отказался принимать письмо для дальнейшей пересылки.Не удалось построить маршрутКод ошибкиПочта к домену получателя не маршрутизируется.Придержано как спамКод ошибкиПисьмо отвергнуто по спам-признакам. Отказ не про адрес — про нас и про содержимое.Найден вирусКод ошибкиПриёмник счёл вложение или ссылку вредоносными.Отказы по данным службыЭкран монитораОтчёт SparkPost Signals об отказах за выбранный период — в классификации SparkPost, а не в категориях MTA.