max-cold-virtual-mta-msg

<domain>

Сколько первых писем в день этому получателю уходит с холодного адреса
в конфигурации это строкаmax-cold-virtual-mta-msg 0/dвнутри блока <domain>
Прогрев чужими руками: первые письма дня — с холодного адреса

Механизм придуман для одной задачи: ввести новый адрес отправки в работу, не рассылая с него отдельную кампанию. Прогретый адрес отдаёт первые N писем дня своему «холодному» напарнику, тот отправляет их сам — и постепенно набирает у получателя историю.

Кто с кем в паре, задаётся отдельно. Напарник называется директивой cold-virtual-mta в блоке прогретого адреса. Здесь же задаётся только количество: сколько писем ему отдать. Ноль — механизм выключен, и это умолчание.

Счёт идёт на каждого получателя отдельно. Руководство говорит об этом прямо: 1000/day означает тысячу писем на Yahoo, тысячу на Hotmail и так далее — а не тысячу всего. На парке из десятка крупных получателей это десятикратная разница между ожиданием и тем, что произойдёт.

Отбор происходит при приёме письма и только по SMTP. Решение, уйдёт письмо с холодного адреса или с обычного, принимается в момент подачи, а не перед доставкой. Письма, поданные через API, в отбор не попадают.

Главная ловушка. Холодный адрес не наследует настройки того адреса, который ему письма отдаёт. Руководство предупреждает об этом отдельной строкой: лимиты, ключи подписи, имя в приветствии — всё это на холодном адресе надо задать заново. Прогрев с неподписанными письмами или без сходящегося PTR принесёт репутации больше вреда, чем сам прогрев пользы.
Что делает Хаб. Не пользуется: прогрев в Хабе управляется планом — своё расписание, своя библиотека сообщений, резервный пул адресов и остановка по доле спама. Движковый механизм отдаёт часть боевого трафика и тем самым делает прогрев заложником рассылки: нет рассылки в этот день — нет и прогрева. Держим его как альтернативу для тех, кто прогревает не через Хаб.
Рекомендуемые значения

Лесенкой, а не одним числом. Директива принимает последовательность: 1/day,2/day,3/day,4/day — в первый день холодному адресу достанется одно письмо, во второй два и так далее. Ограничения на длину списка нет, последнее значение повторяется дальше каждый день. Именно так и стоит задавать: постоянное число с первого дня — это не прогрев.

От чего считать. Считайте на одного крупного получателя, а не на весь объём: значение умножается на число получателей. Начинать разумно с единиц-десятков писем в день на получателя и удваивать раз в несколько дней, глядя на долю отказов у самого холодного адреса.

Несколько холодных адресов. cold-virtual-mta можно повторить — тогда они используются по кругу, и лимит применяется к каждому из них отдельно. Два холодных адреса при 100/day — это две сотни писем на получателя, а не сотня на двоих.

Лесенка и порядок величин — наша рекомендация. Из руководства здесь синтаксис последовательности, умолчание 0/d и правило «на каждого получателя».
Пример в конфигурации
# прогретый адрес отдаёт первые письма дня напарнику
<virtual-mta vmta1>
    smtp-source-host 1.2.3.4 vmta1.example.com
    cold-virtual-mta vmta-cold
    <domain *>
        max-cold-virtual-mta-msg 1/day,2/day,5/day,10/day    </domain>
</virtual-mta>

# холодный адрес — со своими настройками, ничего не наследует
<virtual-mta vmta-cold>
    smtp-source-host 5.6.7.8 cold.example.com
    <domain *>
        max-msg-rate 10/h
    </domain>
</virtual-mta>
Лесенка на четыре дня: 1, 2, 5, 10 писем на получателя, дальше по 10 ежедневно. У холодного адреса свой smtp-source-host и свой темп — наследования нет.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

Типичные ошибки и проблемы

что делают не так и чем это кончается3 ошибки▶

Считают лимит на весь объём, а не на получателя

§ 3.3.10

Чем чревато1000/day при десяти крупных получателях — это десять тысяч писем с холодного адреса за день, а не тысяча. Новый адрес получает объём, который прогревом уже не является, и вместо репутации зарабатывает отказы.
Как заметитьДоля отказов у холодного адреса растёт с первого же дня, при том что расчётный объём выглядел безопасным.
Как правильноДелить задуманный дневной объём на число получателей, которым парк реально пишет, и задавать результат — лесенкой от единиц.

Ждут, что холодный адрес унаследует настройки

§ 3.3.20

Чем чреватоОн не наследует ничего: ни лимитов, ни ключей подписи, ни имени в приветствии. Письма уходят неподписанными и с несходящимся PTR — то есть ровно так, как не должен выглядеть новый адрес.
Как заметитьВ доставленных письмах с холодного адреса нет заголовка подписи; получатели отвечают жалобами на аутентификацию.
Как правильноЗадать холодному адресу полный набор: источник, имя, ключи подписи, собственные лимиты. Это самостоятельный адрес отправки, а не режим другого.

Ставят постоянное число и называют это прогревом

наш опыт

Чем чревато100/day с первого дня — это не прогрев, а сразу сотня писем в день с адреса без истории. Смысл прогрева в росте: получатель должен видеть аккуратно увеличивающийся поток, а не ступеньку из ниоткуда.
Как заметитьПервые дни проходят гладко, потом появляются временные отказы и попадание в папку «Спам» — репутация не успела сложиться.
Как правильноЗадавать последовательность и удваивать значение раз в несколько дней, сверяясь с долей отказов именно холодного адреса.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
max-cold-virtual-mta-msg <daily-limit>
Значения
дневное число, например 500/d; можно последовательностью через запятую
Умолчание
0/d § 3.3.10.57
Применение
reload, перезапуск не нужен
Очередь
уже поставленное в очередь не затронет
Где писать
<domain>
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Директива живёт в блоке <domain> внутри <virtual-mta>: значение из <domain *> действует на всех получателей, блок конкретного получателя его перекрывает. При объединении по MX берётся значение объединённой очереди, а не отдельных доменов, — и руководство отдельно предупреждает, что при наличии списка объединения по MX через холодные адреса может пойти меньше трафика, чем задано, даже у необъединённых доменов.
Как проверить на узле
Узел не показывает счётчик отдельно — смотреть надо в учёт, в поле, где записан реально отправивший адрес:
pmtaacctfind --output csv[vmta,rcpt,timeLogged] /var/log/pmta/acct-*.csv
Холодный адрес должен появляться на первых письмах дня к каждому получателю и исчезать после выборки лимита. Если он не появляется вовсе — проверьте, что письма подаются по SMTP: отбор идёт только при приёме.
В Хабе
Цена ошибки
обратимо: вредит, пока стоит
Сценарии
Ротация адресов отправки · Прогрев адресов