Hi,

I'm trying to route mail to a non-default relay by recepient, i.e. mail
should be relayed via default-relay.domain for all recepients except
user@domain, which should be routet via nondefault-relay.domain. This
works for user@domain and user+ext@domain (c.f. config below), but not
for user+other_ext@domain. man 5 transport claims

TABLE SEARCH ORDER
With  lookups  from  indexed files such as DB or DBM, or from networked
tables such as NIS, LDAP or SQL, patterns are tried  in the  order  as
listed below:
user+extension@domain transport:nexthop
[...]
user@domain transport:nexthop
[...]

As I'm using a normal hash table, I assumed that user+$anything@domain
would match user@domain (unless there is a specific entry for
user+$anything@domain). Did I miss some option or mis-read the manual?

Config:
main.cf:
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
myorigin = $mydomain
myhostname = test.domain
mydomain = domain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [2001:db8::/64]
relay_domains =
relayhost =  default-relay.domain
smtpd_relay_restrictions = permit_mynetworks, reject
transport_maps = hash:/etc/postfix/transport

/etc/postfix/transport:
user@domain smtp:[nondefault-relay.domain]:25
user+ext@domain smtp:[nondefault-relay.domain]:25

Test results:
mail to user@domain -> relay via nondefault-relay.domain
mail to user+ext@domain -> relay via nondefault-relay.domain
mail to user+other_ext@domain -> relay via default-relay.domain

Version: 3.5.6 (package from Debian bullseye)

Best regards,
Jan-Martin

-- 
Dr. Jan-Martin Rämer
Systemtechnik
Zentrum für Hochschul-IT Rheinland-Pfalz
Moselweißer Straße 4, 56073 Koblenz
Telefon +49(0)261 9528-906
rae...@zit-rlp.de

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to