критично
Блоки приёмника пишутся не по одному на домен, а по образцу, и одному письму обычно подходят сразу несколько. MTA не выбирает из них один, а сливает — от самого общего к самому точному.
Порядок в файле не значит ничего. Руководство говорит это дважды, и не зря: почти во всех конфигурационных форматах побеждает последняя запись, а здесь — самая точная. Блок <domain *> можно писать первым, последним или в середине: он всё равно останется основанием, поверх которого лягут остальные.
Как слияние выглядит на деле. Пример из руководства: три блока подряд — discard.port25.com, *.port25.com и [*.]port25.com. Письмо на discard.port25.com получит bounce-after 1h из первого блока, log-commands yes из второго и всё прочее из третьего. Ни одна настройка не потерялась и ни одна не отменила другую целиком — каждая пришла оттуда, где записана точнее.
Отличие от разбора отправителя. Механизм слияния тот же самый, что у source-matching, но решает другое: там — примут ли письмо, здесь — с какой скоростью, сколькими соединениями, с какими повторами и с каким требованием к шифрованию его повезут.
Формы образца описаны отдельно — их пять, и одна из них ловушка; разбор на странице config-syntax-types.
Образцы точнее звёздочки Хаб пока не пишет: разделение по провайдерам живёт у него в планировщике, а не в конфигурации узла. Когда дойдёт до провайдерских профилей в конфиге, писать их надо будет формой [*.]домен — именно потому, что *.домен не ловит сам домен.
Собственных значений у механизма нет — сливаются значения директив. Выбор идёт не между значениями, а между формами образца:
| Форма | Что ловит | Когда писать |
|---|---|---|
| * | все домены | основание: то, что верно для всех |
| [*.]домен | домен и все его поддомены | профиль получателя — обычный выбор |
| *.домен | только поддомены, сам домен нет | редко: когда домен и поддомены надо развести |
| точное имя | один домен | исключение для одного получателя |
| [ip/маска] | домены, записанные четвёркой чисел | адреса-литералы, [0/0] — все такие |
Правило простое: [*.] почти всегда, *. почти никогда. Вторая форма нужна ровно тогда, когда для домена и его поддоменов задумана разная политика — и тогда обе формы пишутся рядом, чтобы намерение было видно.
# порядок строк не значит ничего — значит точность образца <domain discard.port25.com> # только этот хост bounce-after 1h </domain> <domain *.port25.com> # поддомены, но НЕ port25.com log-commands yes </domain> <domain [*.]port25.com> # и домен, и поддомены bounce-after 4d </domain>
что делают не так и чем это кончается3 ошибки▶
§ 3.3.10
§ 3.3.10
§ 3.3.10
3 связи
Щадящий режим — вторая личность очередиНастройки щадящего режима сливаются по приёмнику так же, как и все остальные. § 3.3.10Адрес отправки — из чего он складываетсяБлок приёмника может стоять внутри адреса: политика приёмника и адрес складываются, а не заменяют друг друга. § 3.3.13.2domain<virtual-mta-pool>Правила приёмника здесь те же, что и везде; отличается только то, кому они достаются. § 3.3.13.2Политика приёмника внутри адресаМеханизм, который здесь и виден. inferenceТри правила пула, названные руководством прямоБлок получателя внутри пула достаётся участникам, а собственный блок участника его перекрывает. § 9.3Авторизация при доставкеТа же настройка на другом уровне. § 10.1.2
pmta show settings discard.port25.com/mta-news-1 pmta show settings port25.com/mta-news-1
3 статьи
◇Щадящий режим — вторая личность очередиОчередь, которой приёмник начал отказывать, переключается на параллельный набор лимитов, повторов и маршрутов — десять директив, действующих только в этом режиме.◇Наблюдение за репутацией внутри узлаMTA сам следит за ответами приёмников и по совпадению с образцом меняет режим очереди — реакция внутри соединения, а не по телеметрии.◇События получателейПоследние 50 событий доставки, отказа и задержки по очереди — включаются track-recipient-events и видны в выводе очередей.