Knowledge base

<virtual-mta>

critical

Sending address
What the node presents itself as to the receiving server

The block describes one sending address: which IP the message leaves from and what name the node introduces itself with. Everything written inside applies to this address and no other.

Limits written here count the address as a whole — across all receiving servers at once. This is the level at which most decisions about the fleet are made: how much the address sends per hour, how many bytes, how many connections it holds.

Hence the name collision. The same directive names appear both here and in the receiver block — because the question “how much” is asked at both levels, and the answers add up. The mechanism is covered separately (virtual-mta).

A receiver block can be nested inside — then the receiver policy will be this address’s own. That is what the Hub does: it writes the rate and backoff mode inside the address rather than at the node level.

Example configuration
# address properties outside, receiver policy inside
<virtual-mta mta-news-1>    smtp-source-host 1.2.3.4 news1.example.com
    domain-key sel1,example.com,/etc/pmta/keys/sel1.pem
    <domain *>
        max-msg-rate 500/h
    </domain>
</virtual-mta>
The name in the header is what the address is selected by: a message header, a pattern rule, a source default. It is also what is printed in accounting.
yellow — — directive names, blue — blocks. They are highlighted the same way in the text of the card.
Compatibility
PowerMTA 6.0
described in the manual of this version · platform: any
The vendor does not state the first version for every directive — there is no note here. The name also appears in the 5.0 edition of the manual.
In the Hub
Cost of a mistake
reversible: harms only while it is set
Scenarios
Sending address rotation
Priority
critical