1<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" 2 "http://www.w3.org/TR/html4/loose.dtd"> 3<html> <head> 4<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> 5<title> Postfix manual - transport(5) </title> 6</head> <body> <pre> 7TRANSPORT(5) TRANSPORT(5) 8 9<b>NAME</b> 10 transport - Postfix transport table format 11 12<b>SYNOPSIS</b> 13 <b>postmap /etc/postfix/transport</b> 14 15 <b>postmap -q "</b><i>string</i><b>" /etc/postfix/transport</b> 16 17 <b>postmap -q - /etc/postfix/transport</b> <<i>inputfile</i> 18 19<b>DESCRIPTION</b> 20 The optional <a href="transport.5.html"><b>transport</b>(5)</a> table specifies a mapping from email 21 addresses to message delivery transports and next-hop destinations. 22 Message delivery transports such as <b>local</b> or <b>smtp</b> are defined in the 23 <a href="master.5.html"><b>master.cf</b></a> file, and next-hop destinations are typically hosts or domain 24 names. The table is searched by the <a href="trivial-rewrite.8.html"><b>trivial-rewrite</b>(8)</a> daemon. 25 26 This mapping overrides the default <i>transport</i>:<i>nexthop</i> selection that is 27 built into Postfix: 28 29 <b><a href="postconf.5.html#local_transport">local_transport</a> (default: <a href="local.8.html">local</a>:$<a href="postconf.5.html#myhostname">myhostname</a>)</b> 30 This is the default for final delivery to domains listed with 31 <b><a href="postconf.5.html#mydestination">mydestination</a></b>, and for [<i>ipaddress</i>] destinations that match 32 <b>$<a href="postconf.5.html#inet_interfaces">inet_interfaces</a></b> or <b>$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a></b>. The default <i>nexthop</i> des- 33 tination is the MTA hostname. 34 35 <b><a href="postconf.5.html#virtual_transport">virtual_transport</a> (default: <a href="virtual.8.html">virtual</a>:)</b> 36 This is the default for final delivery to domains listed with 37 <b><a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a></b>. The default <i>nexthop</i> destination is the 38 recipient domain. 39 40 <b><a href="postconf.5.html#relay_transport">relay_transport</a> (default: relay:)</b> 41 This is the default for remote delivery to domains listed with 42 <b><a href="postconf.5.html#relay_domains">relay_domains</a></b>. In order of decreasing precedence, the <i>nexthop</i> 43 destination is taken from <b><a href="postconf.5.html#relay_transport">relay_transport</a></b>, <b><a href="postconf.5.html#sender_dependent_relayhost_maps">sender_depen</a>-</b> 44 <b><a href="postconf.5.html#sender_dependent_relayhost_maps">dent_relayhost_maps</a></b>, <b><a href="postconf.5.html#relayhost">relayhost</a></b>, or from the recipient domain. 45 46 <b><a href="postconf.5.html#default_transport">default_transport</a> (default: <a href="smtp.8.html">smtp</a>:)</b> 47 This is the default for remote delivery to other destinations. 48 In order of decreasing precedence, the <i>nexthop</i> destination is 49 taken from <b><a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>,</b> 50 <b><a href="postconf.5.html#default_transport">default_transport</a></b>, <b><a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a></b>, <b><a href="postconf.5.html#relayhost">relayhost</a></b>, 51 or from the recipient domain. 52 53 Normally, the <a href="transport.5.html"><b>transport</b>(5)</a> table is specified as a text file that 54 serves as input to the <a href="postmap.1.html"><b>postmap</b>(1)</a> command. The result, an indexed file 55 in <b>dbm</b> or <b>db</b> format, is used for fast searching by the mail system. 56 Execute the command "<b>postmap /etc/postfix/transport</b>" to rebuild an 57 indexed file after changing the corresponding transport table. 58 59 When the table is provided via other means such as NIS, LDAP or SQL, 60 the same lookups are done as for ordinary indexed files. 61 62 Alternatively, the table can be provided as a regular-expression map 63 where patterns are given as regular expressions, or lookups can be 64 directed to TCP-based server. In those case, the lookups are done in a 65 slightly different way as described below under "REGULAR EXPRESSION 66 TABLES" or "TCP-BASED TABLES". 67 68<b>CASE FOLDING</b> 69 The search string is folded to lowercase before database lookup. As of 70 Postfix 2.3, the search string is not case folded with database types 71 such as <a href="regexp_table.5.html">regexp</a>: or <a href="pcre_table.5.html">pcre</a>: whose lookup fields can match both upper and 72 lower case. 73 74<b>TABLE FORMAT</b> 75 The input format for the <a href="postmap.1.html"><b>postmap</b>(1)</a> command is as follows: 76 77 <i>pattern result</i> 78 When <i>pattern</i> matches the recipient address or domain, use the 79 corresponding <i>result</i>. 80 81 blank lines and comments 82 Empty lines and whitespace-only lines are ignored, as are lines 83 whose first non-whitespace character is a `#'. 84 85 multi-line text 86 A logical line starts with non-whitespace text. A line that 87 starts with whitespace continues a logical line. 88 89 The <i>pattern</i> specifies an email address, a domain name, or a domain name 90 hierarchy, as described in section "TABLE LOOKUP". 91 92 The <i>result</i> is of the form <i>transport:nexthop</i> and specifies how or where 93 to deliver mail. This is described in section "RESULT FORMAT". 94 95<b>TABLE SEARCH ORDER</b> 96 With lookups from indexed files such as DB or DBM, or from networked 97 tables such as NIS, LDAP or SQL, patterns are tried in the order as 98 listed below: 99 100 <i>user+extension@domain transport</i>:<i>nexthop</i> 101 Deliver mail for <i>user+extension@domain</i> through <i>transport</i> to <i>nex-</i> 102 <i>thop</i>. 103 104 <i>user@domain transport</i>:<i>nexthop</i> 105 Deliver mail for <i>user@domain</i> through <i>transport</i> to <i>nexthop</i>. 106 107 <i>domain transport</i>:<i>nexthop</i> 108 Deliver mail for <i>domain</i> through <i>transport</i> to <i>nexthop</i>. 109 110 <i>.domain transport</i>:<i>nexthop</i> 111 Deliver mail for any subdomain of <i>domain</i> through <i>transport</i> to 112 <i>nexthop</i>. This applies only when the string <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> is not 113 listed in the <b><a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a></b> configuration 114 setting. Otherwise, a domain name matches itself and its subdo- 115 mains. 116 117 <b>*</b> <i>transport</i>:<i>nexthop</i> 118 The special pattern <b>*</b> represents any address (i.e. it functions 119 as the wild-card pattern, and is unique to Postfix transport 120 tables). 121 122 Note 1: the null recipient address is looked up as 123 <b>$<a href="postconf.5.html#empty_address_recipient">empty_address_recipient</a></b>@<b>$<a href="postconf.5.html#myhostname">myhostname</a></b> (default: mailer-daemon@hostname). 124 125 Note 2: <i>user@domain</i> or <i>user+extension@domain</i> lookup is available in 126 Postfix 2.0 and later. 127 128<b>RESULT FORMAT</b> 129 The lookup result is of the form <i>transport</i><b>:</b><i>nexthop</i>. The <i>transport</i> 130 field specifies a mail delivery transport such as <b>smtp</b> or <b>local</b>. The 131 <i>nexthop</i> field specifies where and how to deliver mail. 132 133 The transport field specifies the name of a mail delivery transport 134 (the first name of a mail delivery service entry in the Postfix <a href="master.5.html"><b>mas-</b> 135 <b>ter.cf</b></a> file). 136 137 The interpretation of the nexthop field is transport dependent. In the 138 case of SMTP, specify a service on a non-default port as <i>host</i>:<i>service</i>, 139 and disable MX (mail exchanger) DNS lookups with [<i>host</i>] or [<i>host</i>]:<i>port</i>. 140 The [] form is required when you specify an IP address instead of a 141 hostname. 142 143 A null <i>transport</i> and null <i>nexthop</i> result means "do not change": use the 144 delivery transport and nexthop information that would be used when the 145 entire transport table did not exist. 146 147 A non-null <i>transport</i> field with a null <i>nexthop</i> field resets the nexthop 148 information to the recipient domain. 149 150 A null <i>transport</i> field with non-null <i>nexthop</i> field does not modify the 151 transport information. 152 153<b>EXAMPLES</b> 154 In order to deliver internal mail directly, while using a mail relay 155 for all other mail, specify a null entry for internal destinations (do 156 not change the delivery transport or the nexthop information) and spec- 157 ify a wildcard for all other destinations. 158 159 <b>my.domain :</b> 160 <b>.my.domain :</b> 161 <b>* <a href="smtp.8.html">smtp</a>:outbound-relay.my.domain</b> 162 163 In order to send mail for <b>example.com</b> and its subdomains via the <b>uucp</b> 164 transport to the UUCP host named <b>example</b>: 165 166 <b>example.com uucp:example</b> 167 <b>.example.com uucp:example</b> 168 169 When no nexthop host name is specified, the destination domain name is 170 used instead. For example, the following directs mail for <i>user</i>@<b>exam-</b> 171 <b>ple.com</b> via the <b>slow</b> transport to a mail exchanger for <b>example.com</b>. 172 The <b>slow</b> transport could be configured to run at most one delivery 173 process at a time: 174 175 <b>example.com slow:</b> 176 177 When no transport is specified, Postfix uses the transport that matches 178 the address domain class (see DESCRIPTION above). The following sends 179 all mail for <b>example.com</b> and its subdomains to host <b>gateway.exam-</b> 180 <b>ple.com</b>: 181 182 <b>example.com :[gateway.example.com]</b> 183 <b>.example.com :[gateway.example.com]</b> 184 185 In the above example, the [] suppress MX lookups. This prevents mail 186 routing loops when your machine is primary MX host for <b>example.com</b>. 187 188 In the case of delivery via SMTP, one may specify <i>hostname</i>:<i>service</i> 189 instead of just a host: 190 191 <b>example.com <a href="smtp.8.html">smtp</a>:bar.example:2025</b> 192 193 This directs mail for <i>user</i>@<b>example.com</b> to host <b>bar.example</b> port <b>2025</b>. 194 Instead of a numerical port a symbolic name may be used. Specify [] 195 around the hostname if MX lookups must be disabled. 196 197 The error mailer can be used to bounce mail: 198 199 <b>.example.com <a href="error.8.html">error</a>:mail for *.example.com is not deliverable</b> 200 201 This causes all mail for <i>user</i>@<i>anything</i><b>.example.com</b> to be bounced. 202 203<b>REGULAR EXPRESSION TABLES</b> 204 This section describes how the table lookups change when the table is 205 given in the form of regular expressions. For a description of regular 206 expression lookup table syntax, see <a href="regexp_table.5.html"><b>regexp_table</b>(5)</a> or <a href="pcre_table.5.html"><b>pcre_table</b>(5)</a>. 207 208 Each pattern is a regular expression that is applied to the entire 209 address being looked up. Thus, <i>some.domain.hierarchy</i> is not looked up 210 via its parent domains, nor is <i>user+foo@domain</i> looked up as 211 <i>user@domain</i>. 212 213 Patterns are applied in the order as specified in the table, until a 214 pattern is found that matches the search string. 215 216 The <a href="trivial-rewrite.8.html"><b>trivial-rewrite</b>(8)</a> server disallows regular expression substitution 217 of $1 etc. in regular expression lookup tables, because that could open 218 a security hole (Postfix version 2.3 and later). 219 220<b>TCP-BASED TABLES</b> 221 This section describes how the table lookups change when lookups are 222 directed to a TCP-based server. For a description of the TCP 223 client/server lookup protocol, see <a href="tcp_table.5.html"><b>tcp_table</b>(5)</a>. This feature is not 224 available up to and including Postfix version 2.4. 225 226 Each lookup operation uses the entire recipient address once. Thus, 227 <i>some.domain.hierarchy</i> is not looked up via its parent domains, nor is 228 <i>user+foo@domain</i> looked up as <i>user@domain</i>. 229 230 Results are the same as with indexed file lookups. 231 232<b>CONFIGURATION PARAMETERS</b> 233 The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant. The text 234 below provides only a parameter summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more 235 details including examples. 236 237 <b><a href="postconf.5.html#empty_address_recipient">empty_address_recipient</a></b> 238 The address that is looked up instead of the null sender 239 address. 240 241 <b><a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a></b> 242 List of Postfix features that use <i>domain.tld</i> patterns to match 243 <i>sub.domain.tld</i> (as opposed to requiring <i>.domain.tld</i> patterns). 244 245 <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> 246 List of transport lookup tables. 247 248<b>SEE ALSO</b> 249 <a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>, rewrite and resolve addresses 250 <a href="master.5.html">master(5)</a>, <a href="master.5.html">master.cf</a> file format 251 <a href="postconf.5.html">postconf(5)</a>, configuration parameters 252 <a href="postmap.1.html">postmap(1)</a>, Postfix lookup table manager 253 254<b>README FILES</b> 255 <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a>, address rewriting guide 256 <a href="DATABASE_README.html">DATABASE_README</a>, Postfix lookup table overview 257 <a href="FILTER_README.html">FILTER_README</a>, external content filter 258 259<b>LICENSE</b> 260 The Secure Mailer license must be distributed with this software. 261 262<b>AUTHOR(S)</b> 263 Wietse Venema 264 IBM T.J. Watson Research 265 P.O. Box 704 266 Yorktown Heights, NY 10598, USA 267 268 TRANSPORT(5) 269</pre> </body> </html> 270