Global
The line sets the protocol header version — 1 or 2. The default is 1.
There are three levels, and this is the most general one. The most specific is protocol-version in the proxy block itself; if it is not set there, the same line of the sending address is used; if that is not set either, this one applies, with the default 1.
The second version is needed for additional fields — only with it does passing the queue domain (proxy-include-tlv) work.
The version is chosen by the proxy, not by the node: set the one the proxy understands.
The value is chosen by what the proxy can do:
| Value | When |
|---|---|
| 1 (default) | the proxy is old or the queue domain is not needed |
| 2 | passing the queue domain is needed |
# the second version and passing the queue domain go as a pair proxy-protocol 2proxy-include-tlv domain
what people get wrong and how it ends1 mistake▶
our experience
2 relations
proxy-include-tlvGlobalPassing the queue domain works only with the second version. § 3.3.1.49
use-proxyGlobalThe protocol version the node will use to connect to proxies from this list. § 3.3.1.48proxy-protocol<virtual-mta>The level above: if not set here, the version is taken from there. § 3.3.1.48protocol-version<proxy>A level lower in precision: this line overrides it. § 3.3.22.3
tcpdump -A -i any -c 20 'port 5000'
3 articles
◇Cloud restrictionsClouds restrict outbound mail on port 25 until you ask them to lift the limit, and mailbox providers treat their address ranges with suspicion.◇The sending address — what it is made ofA named set of everything that is a property of the address: which IP the message leaves from, how the node introduces itself, what it signs with and how fast it sends.◇A named proxy and three levels of its settingsThe block carries the proxy address, the external sending address, the protocol version, the field type and the number of attempts; the first two lines are required.