23 Jahre aus Stockholm
Operator-Notizen · Aus dem Stockholm-Büro

PowerMTA Routing — IP-Pools und Stream-Design Grundlagen

PowerMTAs Stärke liegt in den deklarativen Routing- und Throttling-Konfigurationen. Mit wenigen Zeilen komplexe Versand-Logik ausdrücken.

PowerMTAs Stärke liegt in den deklarativen Routing- und Throttling-Konfigurationen, die mit wenigen Zeilen komplexe Versand-Logik ausdrücken.

Das vMTA-Konzept

vMTAs sind die zentrale Abstraktion. Ein vMTA ist eine logische Gruppierung von:

  • Source-IP
  • HELO-Hostname
  • Maximum gleichzeitige Konnektionen
  • Optional: spezifische DKIM-Konfiguration, Bounce-Routing
<virtual-mta transactional-eu>
    smtp-source-host 198.51.100.10 mta-trans-eu.ihr-unternehmen.de
    max-smtp-out 100
    queue-to *@*
</virtual-mta>

<virtual-mta marketing-eu>
    smtp-source-host 198.51.100.11 mta-mkt-eu.ihr-unternehmen.de
    max-smtp-out 50
    queue-to *@*
</virtual-mta>

<virtual-mta cold-outreach>
    smtp-source-host 198.51.100.20 mta-cold.outreach-domain.de
    max-smtp-out 20
    queue-to *@*
</virtual-mta>

vMTA-Pools für Lastverteilung

<virtual-mta transactional-1>
    smtp-source-host 198.51.100.10 mta1.ihr-unternehmen.de
    max-smtp-out 100
</virtual-mta>

<virtual-mta transactional-2>
    smtp-source-host 198.51.100.11 mta2.ihr-unternehmen.de
    max-smtp-out 100
</virtual-mta>

<virtual-mta-pool transactional-pool>
    virtual-mta transactional-1
    virtual-mta transactional-2
</virtual-mta-pool>

Versand wird automatisch über die IPs verteilt. Bei Reputations-Problemen einer IP übernehmen die anderen.

Per-Receiver-Throttling

<domain gmail.com>
    max-smtp-out 20
    max-msg-rate 250/m
    max-msg-per-connection 50
</domain>

<domain hotmail.com>
    max-smtp-out 15
    max-msg-rate 200/m
    max-msg-per-connection 30
</domain>

<domain yahoo.com>
    max-smtp-out 10
    max-msg-rate 150/m
</domain>

<domain *>
    max-smtp-out 5
    max-msg-rate 100/m
</domain>

Smart Source Routes

<source-routing-rules>
    sender-pattern *@brand-a.de virtual-mta-pool brand-a-pool
    sender-pattern *@brand-b.de virtual-mta-pool brand-b-pool
    sender-pattern *@outreach.brand-a.de virtual-mta cold-brand-a
    sender-pattern *@* virtual-mta-pool default-pool
</source-routing-rules>

Routing-Regeln werden in Reihenfolge geprüft — die erste passende Regel gewinnt.

Domain-spezifische vMTA-Routing

<source-routing-rules>
    recipient-pattern *@gmail.com virtual-mta-pool gmail-optimized-pool
    recipient-pattern *@googlemail.com virtual-mta-pool gmail-optimized-pool
    
    recipient-pattern *@outlook.com virtual-mta-pool microsoft-optimized-pool
    recipient-pattern *@hotmail.com virtual-mta-pool microsoft-optimized-pool
    recipient-pattern *@live.com virtual-mta-pool microsoft-optimized-pool
</source-routing-rules>

IPs spezifisch für Reputation bei einem Anbieter aufbauen.

Bounce-Routing

<bounce-processing>
    classify-bounce 5xx hard
    suppress-on-hard-bounce yes
    classify-soft-bounce-as-hard-after 3
    bounce-pipeline /var/pmta/bounce-handler.sh
</bounce-processing>

<retry-schedule>
    retry-after-soft-bounce 15m
    max-retry-attempts 5
    backoff exponential
</retry-schedule>

Stream-Design

Stream 1: Transactional kritisch

<virtual-mta-pool transactional-critical>
    virtual-mta trans-1
    virtual-mta trans-2
</virtual-mta-pool>

<source-routing-rules>
    sender-pattern noreply@*.ihr-unternehmen.de header X-Stream:critical \
                   virtual-mta-pool transactional-critical
</source-routing-rules>

Stream 2: Marketing engaged

<virtual-mta-pool marketing-engaged>
    virtual-mta mkt-engaged-1
    virtual-mta mkt-engaged-2
</virtual-mta-pool>

<source-routing-rules>
    sender-pattern marketing@*.ihr-unternehmen.de header X-Stream:engaged \
                   virtual-mta-pool marketing-engaged
</source-routing-rules>

Anwendung setzt beim Submit den X-Stream-Header. Reputations-Probleme in einem Stream beschädigen nicht andere.

PMTA Web Monitor

Echtzeit-Sicht auf alle Streams: Queue-Größe pro vMTA und Empfänger-Domain, Versand-Rate, Bounce-Quote, Pause-Status, Per-IP-Statistiken.

Bei Authorize Hosting wird das PMTA Web Monitor als Read-only zugänglich — Sie sehen Konfiguration und Statistiken, Konfigurations-Änderungen werden vom Operations-Team koordiniert.

Häufige Konfigurations-Fehler

Fehler 1: max-smtp-out zu hoch. Connection-Failures.

Fehler 2: Per-Receiver-Throttling vergessen. Empfänger-4xx-Throttling.

Fehler 3: Bounce-Klassifikation zu locker. "classify-soft-bounce-as-hard-after 10" ist zu viel.

Fehler 4: Source-Routing-Reihenfolge falsch. Spezifische Regeln zuerst.

PowerMTA-Konfiguration optimieren?

Bei Authorize Hosting Pro werden vMTA-Pools, Routing-Regeln und Stream-Design vom Operations-Team koordiniert.