<source>criticalset by the Hub
The bottom step of stream selection. The directive names the stream or pool that a message from this source will leave through — but only when the choice has not been made higher up: neither by a merge variable, nor by a header, nor by a pattern rule.
Three forms of the value. A stream name is the most predictable. A pool name — the engine will hand out messages to the members in rotation. And the reserved by-smtp-source-ip: the node looks at which of its own addresses the connection came to and takes the stream that has this address declared as its sending address — via smtp-source-host or its proxy form.
The same line takes part in choosing the name for the SMTP greeting. Name resolution starts right from it, and this explains a non-obvious rule: if a pool is set here, the greeting always takes the name of its first member, without rotation.
What to set. In essence it is a choice of three, determined by how many addresses the source has and who decides which one to leave from:
| Value | When | What you get |
|---|---|---|
| stream name | the source has exactly one sending address | predictable, the greeting matches |
| pool name | there are several addresses and they are equal | rotation by the engine |
| by-smtp-source-ip | each address has its own stream | one line for the whole fleet |
The pool and the greeting. When you set a pool name, remember: the name in the greeting is taken from the first member and does not change for the rest. If the pool’s addresses have different reverse records, set the name for each stream separately, as the second word of smtp-source-host.
# the default by connection address — this is how the Hub writes the working configuration <source 0/0> default-virtual-mta by-smtp-source-ip process-x-virtual-mta yes smtp-service yes </source>
what people get wrong and how it ends3 mistakes▶
§ 3.3.1.35
§ 9.4
§ 9.4.5
3 relations
grep -n -B5 default-virtual-mta /etc/pmta/config
3 articles
◇Headers the sender uses to control deliverySix control headers let the submitting side choose a stream, tag a message with a job, set signing options and the key, the envelope identifier and the schedule; each is allowed separately and per source.◇Selecting a sending address by message contentRegular expressions are matched against a header, the return address or the recipient and select a sending address or assign a priority; lists can call each other.◇How a message gets into the engineSix described submission methods: extended SMTP, four language bindings and a directory the node watches on disk.