#++ # NAME # transport 5 # SUMMARY # format of Postfix transport table # SYNOPSIS # \fBpostmap /etc/postfix/transport\fR # # \fBpostmap -q "\fIstring\fB" /etc/postfix/transport\fR # # \fBpostmap -q - /etc/postfix/transport <\fIinputfile\fR # DESCRIPTION # The optional \fBtransport\fR table specifies a mapping from email # addresses to message delivery transports and/or relay hosts. The # mapping is used by the \fBtrivial-rewrite\fR(8) daemon. # # Normally, the \fBtransport\fR table is specified as a text file # that serves as input to the \fBpostmap\fR(1) command. # The result, an indexed file in \fBdbm\fR or \fBdb\fR format, is used # for fast searching by the mail system. Execute the command # \fBpostmap /etc/postfix/transport\fR in order to rebuild the indexed # file after changing the transport table. # # When the table is provided via other means such as NIS, LDAP # or SQL, the same lookups are done as for ordinary indexed files. # # Alternatively, the table can be provided as a regular-expression # map where patterns are given as regular expressions. In that case, # the lookups are done in a slightly different way as described # in section "REGULAR EXPRESSION TABLES". # TABLE FORMAT # .ad # .fi # The format of the transport table is as follows: # .IP "\fIpattern result\fR" # When \fIpattern\fR matches the recipient address or domain, use the # corresponding \fIresult\fR. # .IP "blank lines and comments" # Empty lines and whitespace-only lines are ignored, as # are lines whose first non-whitespace character is a `#'. # .IP "multi-line text" # A logical line starts with non-whitespace text. A line that # starts with whitespace continues a logical line. # .PP # The \fIpattern\fR specifies an email address, a domain name, or # a domain name hierarchy, as described in section "TABLE LOOKUP". # # The \fIresult\fR is of the form \fItransport\fB:\fInexthop\fR. # The \fItransport\fR field specifies a mail delivery transport # such as \fBsmtp\fR or \fBlocal\fR. The \fInexthop\fR field # specifies where and how to deliver mail. More details are given # in section "RESULT FORMAT". # TABLE LOOKUP # .ad # .fi # 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: # .IP "\fIuser+extension@domain transport\fR:\fInexthop\fR" # Mail for \fIuser+extension@domain\fR is delivered through # \fItransport\fR to # \fInexthop\fR. # .IP "\fIuser@domain transport\fR:\fInexthop\fR" # Mail for \fIuser@domain\fR is delivered through \fItransport\fR to # \fInexthop\fR. # .IP "\fIdomain transport\fR:\fInexthop\fR" # Mail for \fIdomain\fR is delivered through \fItransport\fR to # \fInexthop\fR. # .IP "\fI.domain transport\fR:\fInexthop\fR" # Mail for any subdomain of \fIdomain\fR is delivered through # \fItransport\fR to \fInexthop\fR. This applies only when the # string \fBtransport_maps\fR is not listed in the # \fBparent_domain_matches_subdomains\fR configuration setting. # Otherwise, a domain name matches itself and its subdomains. # .PP # Note 1: the special pattern \fB*\fR represents any address (i.e. it # functions as the wild-card pattern). # # Note 2: the null recipient address is looked up as # \fB$empty_address_recipient\fR@\fB$myhostname\fR (default: # mailer-daemon@hostname). # RESULT FORMAT # .ad # .fi # The transport field specifies the name of a mail delivery transport # (the first name of a mail delivery service entry in the Postfix # \fBmaster.cf\fR file). # # The interpretation of the nexthop field is transport # dependent. In the case of SMTP, specify \fIhost\fR:\fIservice\fR for a # non-default server port, and use [\fIhost\fR] or [\fIhost\fR]:\fIport\fR # in order to disable MX (mail exchanger) DNS lookups. The [] form # is required when you specify an IP address instead of a hostname. # # A null \fItransport\fR and null \fInexthop\fR result means "do # not change": use the delivery transport and nexthop information # that would be used when the entire transport table did not exist. # # A non-null \fItransport\fR field with a null \fInexthop\fR field # resets the nexthop information to the recipient domain. # # A null \fItransport\fR field with non-null \fInexthop\fR field # does not modify the transport information. # EXAMPLES # .ad # .fi # In order to deliver internal mail directly, while using a # mail relay for all other mail, specify a null entry for # internal destinations (do not change the delivery transport or # the nexthop information) and specify a wildcard for all other # destinations. # # .ti +5 # \fB\&my.domain :\fR # .ti +5 # \fB\&.my.domain :\fR # .ti +5 # \fB* smtp:outbound-relay.my.domain\fR # # In order to send mail for \fBfoo.org\fR and its subdomains # via the \fBuucp\fR transport to the UUCP host named \fBfoo\fR: # # .ti +5 # \fBfoo.org uucp:foo\fR # .ti +5 # \fB\&.foo.org uucp:foo\fR # # When no nexthop host name is specified, the destination domain # name is used instead. For example, the following directs mail for # \fIuser\fR@\fBfoo.org\fR via the \fBslow\fR transport to a mail # exchanger for \fBfoo.org\fR. The \fBslow\fR transport could be # something that runs at most one delivery process at a time: # # .ti +5 # \fBfoo.org slow:\fR # # When no transport is specified, Postfix uses the transport that # matches the address domain class (see TRANSPORT FIELD discussion # above). The following sends all mail for \fBfoo.org\fR and its # subdomains to host \fBgateway.foo.org\fR: # # .ti +5 # \fBfoo.org :[gateway.foo.org]\fR # .ti +5 # \fB\&.foo.org :[gateway.foo.org]\fR # # In the above example, the [] are used to suppress MX lookups. # The result would likely point to your local machine. # # In the case of delivery via SMTP, one may specify # \fIhostname\fR:\fIservice\fR instead of just a host: # # .ti +5 # \fBfoo.org smtp:bar.org:2025\fR # # This directs mail for \fIuser\fR@\fBfoo.org\fR to host \fBbar.org\fR # port \fB2025\fR. Instead of a numerical port a symbolic name may be # used. Specify [] around the hostname in order to disable MX lookups. # # The error mailer can be used to bounce mail: # # .ti +5 # \fB\&.foo.org error:mail for *.foo.org is not deliverable\fR # # This causes all mail for \fIuser\fR@\fIanything\fB.foo.org\fR # to be bounced. # REGULAR EXPRESSION TABLES # .ad # .fi # This section describes how the table lookups change when the table # is given in the form of regular expressions. For a description of # regular expression lookup table syntax, see \fBregexp_table\fR(5) # or \fBpcre_table\fR(5). # # Each pattern is a regular expression that is applied to the entire # domain being looked up. Thus, \fIsome.domain.hierarchy\fR is not # broken up into parent domains. # # Patterns are applied in the order as specified in the table, until a # pattern is found that matches the search string. # # Results are the same as with indexed file lookups, with # the additional feature that parenthesized substrings from the # pattern can be interpolated as \fB$1\fR, \fB$2\fR and so on. # CONFIGURATION PARAMETERS # .ad # .fi # The following \fBmain.cf\fR parameters are especially relevant to # this topic. See the Postfix \fBmain.cf\fR file for syntax details # and for default values. Use the \fBpostfix reload\fR command after # a configuration change. # .IP \fBempty_address_recipient\fR # The address that is looked up instead of the null sender address. # .IP \fBparent_domain_matches_subdomains\fR # List of Postfix features that use \fIdomain.tld\fR patterns # to match \fIsub.domain.tld\fR (as opposed to # requiring \fI.domain.tld\fR patterns). # .IP \fBtransport_maps\fR # List of transport lookup tables. # SEE ALSO # postmap(1) create mapping table # trivial-rewrite(8) rewrite and resolve addresses # pcre_table(5) format of PCRE tables # regexp_table(5) format of POSIX regular expression tables # LICENSE # .ad # .fi # The Secure Mailer license must be distributed with this software. # AUTHOR(S) # Wietse Venema # IBM T.J. Watson Research # P.O. Box 704 # Yorktown Heights, NY 10598, USA #-- # By default, this file is not used. See sample-transport.cf