725c9874 |
1 | |
2 | ### router/200_exim4-config_primary |
3 | ################################# |
4 | # This file holds the primary router, responsible for nonlocal mails |
5 | |
6 | .ifdef DCconfig_internet |
7 | # configtype=internet |
8 | # |
9 | # deliver mail to the recipient if recipient domain is a domain we |
10 | # relay for. We do not ignore any target hosts here since delivering to |
11 | # a site local or even a link local address might be wanted here, and if |
12 | # such an address has found its way into the MX record of such a domain, |
13 | # the local admin is probably in a place where that broken MX record |
14 | # could be fixed. |
15 | |
16 | dnslookup_relay_to_domains: |
17 | debug_print = "R: dnslookup_relay_to_domains for $local_part@$domain" |
18 | driver = dnslookup |
bbc29c5a |
19 | domains = ! +local_domains : ! +unix_domains : +relay_to_domains |
725c9874 |
20 | transport = remote_smtp |
21 | same_domain_copy_routing = yes |
7b83f2a3 |
22 | dnssec_request_domains = * |
725c9874 |
23 | no_more |
24 | |
25 | # deliver mail directly to the recipient. This router is only reached |
26 | # for domains that we do not relay for. Since we most probably can't |
27 | # have broken MX records pointing to site local or link local IP |
28 | # addresses fixed, we ignore target hosts pointing to these addresses. |
29 | |
30 | dnslookup: |
31 | debug_print = "R: dnslookup for $local_part@$domain" |
32 | driver = dnslookup |
bbc29c5a |
33 | domains = ! +local_domains : ! +unix_domains |
725c9874 |
34 | transport = remote_smtp |
35 | same_domain_copy_routing = yes |
36 | # ignore private rfc1918 and APIPA addresses |
37 | ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 : 192.168.0.0/16 :\ |
d2b0a567 |
38 | 172.16.0.0/12 : 10.0.0.0/8 : 169.254.0.0/16 :\ |
39 | 255.255.255.255 |
7b83f2a3 |
40 | dnssec_request_domains = * |
725c9874 |
41 | no_more |
42 | |
43 | .endif |
44 | |
45 | |
46 | .ifdef DCconfig_local |
47 | # configtype=local |
48 | # |
49 | # Stand-alone system, so generate an error for mail to a non-local domain |
50 | nonlocal: |
51 | debug_print = "R: nonlocal for $local_part@$domain" |
52 | driver = redirect |
53 | domains = ! +local_domains |
54 | allow_fail |
55 | data = :fail: Mailing to remote domains not supported |
56 | no_more |
57 | |
58 | .endif |
59 | |
60 | |
61 | .ifdef DCconfig_smarthost DCconfig_satellite |
62 | # configtype=smarthost or configtype=satellite |
63 | # |
64 | # Send all non-local mail to a single other machine (smarthost). |
65 | # |
66 | # This means _ALL_ non-local mail goes to the smarthost. This will most |
67 | # probably not do what you want for domains that are listed in |
68 | # relay_domains. The most typical use for relay_domains is to control |
69 | # relaying for incoming e-mail on secondary MX hosts. In that case, |
70 | # it doesn't make sense to send the mail to the smarthost since the |
71 | # smarthost will probably send the message right back here, causing a |
72 | # loop. |
73 | # |
74 | # If you want to use a smarthost while being secondary MX for some |
75 | # domains, you'll need to copy the dnslookup_relay_to_domains router |
76 | # here so that mail to relay_domains is handled separately. |
77 | |
78 | smarthost: |
79 | debug_print = "R: smarthost for $local_part@$domain" |
80 | driver = manualroute |
81 | domains = ! +local_domains |
82 | transport = remote_smtp_smarthost |
83 | route_list = * DCsmarthost byname |
d21ec910 |
84 | host_find_failed = ignore |
725c9874 |
85 | same_domain_copy_routing = yes |
86 | no_more |
87 | |
88 | .endif |
89 | |
90 | |
91 | # The "no_more" above means that all later routers are for |
92 | # domains in the local_domains list, i.e. just like Exim 3 directors. |