[EXIM] Smart Host Timeout Problems

Página superior
Eliminar este mensaje
Responder a este mensaje
Autor: Lee McLoughlin
Fecha:  
A: exim-users
Asunto: [EXIM] Smart Host Timeout Problems
On all but our main mail machine we have a fairly simple exim setup that
forwards everything over to the main machine.

This morning due to some nitwit site bombarding us with mail our main
machine was basically inaccessible for email.

So mail was left in the queues on the dumb hosts. But after only 10
minutes of waiting the dumb machines reject the mail with:

---
A message that you sent could not be delivered to all of its recipients.
The
following address(es) failed:

  cah1@???:
    retry time not reached for any host after a long failure period
---



The retry timers shouldn't have rejected the message for days.


If anyone could shed light on the problem I'd appreciate it.

I've attached a copy of the configure file for the dumb machines.


--
Lee McLoughlin.                         Phone: +44 171 594 8388
IC-Parc, Imperial College,              Fax:   +44 171 594 8432
South Kensington, London. SW7 2AZ. UK.  Email: lmjm@???
######################################################################
#                  Runtime configuration file for Exim               #
######################################################################



# This file is divided into several parts, all but the last of which are
# terminated by a line containing the word "end". The parts must appear
# in the correct order, and all must be present (even if some of them are
# in fact empty). Blank lines, and lines starting with # are ignored.



######################################################################
#                    MAIN CONFIGURATION SETTINGS                     #
######################################################################


# Specify your host's canonical name here. If this option is not set, the
# uname() function is called to obtain the name.

#primary_hostname = triumph.icparc.ic.ac.uk

# Specify the domain you want to be added to all unqualified addresses
# here. If this option is not set, the primary_hostname value is used.

qualify_domain = icparc.ic.ac.uk

# If you want unqualified recipient addresses to be qualified with a different
# domain to unqualified sender addresses, specify the recipient domain here.
# If this option is not set, the qualify_domain value is used.

# qualify_recipient =

# Specify your local domains as a colon-separated list here. If this option
# is not set, the qualify_recipient value is used as the only local domain.
# If you do not want to do any local deliveries, uncomment the following line,
# but do not supply any data for it.

local_domains = "mail-icparc.doc.ic.ac.uk:icparc.ic.ac.uk"

# Implicitly add the hostname to the value of local_domains

local_domains_include_host


# No local deliveries will never be run under the uids of these users.

# Dont use this. Root might want mail !
# never_users = root

# These can submit mail without a full domain name
receiver_unqualified_nets = 146.169.0.0/255.255.0.0:155.198.0.0/255.255.0.0
sender_unqualified_nets = 146.169.0.0/255.255.0.0:155.198.0.0/255.255.0.0

# Allow anyone in DoC to send to anywhere.
# (Note that if this isn't present then relay_domains isn't checked!)
# 192.168.10 is the NTC network that phoenix is on
# 193.63.254 is the private net between phoenix and penguin
# 193.63.255 is the public net for sunsite machines
sender_net_accept_relay = 146.169.0.0/255.255.0.0:155.198.0.0/255.255.0.0:192.168.10.0/255.255.255.0:193.63.254.0/255.255.255.0:193.63.255.0/255.255.255.0


# I'm willing to relay mail onto these domains
relay_domains = "*doc.ic.ac.uk:*icparc.ic.ac.uk:*icparc.co.uk"

# Allow a fair bit of simultaneous incoming mail!
smtp_accept_max=20

# Make sure *everything* gets a look-in once a day
auto_thaw = 24h

# Try 5 times to find a user (there is a built in 1 sec pause between tries)
finduser_retries = 5

end



######################################################################
#                     TRANSPORTS CONFIGURATION                       #
######################################################################


# This transport is used for local delivery to user mailboxes.

#local_delivery:
# driver = appendfile;
# file = /var/spool/mail/${local_part}

# This transport is used for handling pipe addresses generated by alias
# or .forward files. It has a conventional name, since it is not actually
# mentioned elsewhere in this configuration file.

#address_pipe:
# driver = pipe;
# ignore_status,
# return_output

# This transport is used for handling file addresses generated by alias
# or .forward files. It has a conventional name, since it is not actually
# mentioned elsewhere in this configuration file.

#address_file:
# driver = appendfile

# This transport, whose name (address_reply) is conventional, is automati-
# cally used by Exim when a local part that is expanded via a filter file
# causes an automatic reply to a message to be generated. The only remote
# transport is

#address_reply:
# driver = autoreply


# This transport is used for delivering messages over SMTP connections.

smtp:
driver = smtp

smart_user_transport:
driver = smtp;
hosts = mail.icparc.ic.ac.uk

end



######################################################################
#                      DIRECTORS CONFIGURATION                       #
######################################################################


# This director handles aliasing using a traditional /etc/aliases file.

#system_aliases:
# driver = aliasfile;
## file = /etc/aliases,
## search_type = dbm
# file = mail.aliases,
# rewrite=false,
# search_type = nis0

# This director handles forwarding using traditional ~/.forward files.

#userforward:
# no_verify,
# driver = forwardfile;
# check_local_user,
# seteuid,
# file = .forward
# filter

# This director matches local user mailboxes.

#localuser:
# driver = localuser,
# transport = local_delivery;


smart_user_director:
driver = smartuser,
transport = smart_user_transport

end



######################################################################
#                      ROUTERS CONFIGURATION                         #
######################################################################


# This router routes to remote hosts over SMTP using a DNS lookup with
# default options.

#lookuphost:
# driver = lookuphost,
# transport = smtp;

smarthost:
transport = smtp,
driver = domainlist;
route_list = "* mail.icparc.ic.ac.uk bydns_a"

end



######################################################################
#                      RETRY CONFIGURATION                           #
######################################################################


# This single retry rule applies to all domains and all errors. It specifies
# retries every 15 minutes for 2 hours, then increasing retry intervals,
# starting at 2 hours and increasing each time by a factor of 1.5, up to 16
# hours, then retries every 8 hours until 4 days have passed since the first
# failed delivery.

# Domain        Error        Retries
# ------        -----        -------


# This domain is the main cause of vast backlogs!
#*.ir            *        F,2h,15m; G,12h,2h,1.5; F,1d,8h
# Retrying more often should help them get rejected faster.
*.ir                    *               F,1d,15m


# Everyone else gets the default described above.
*            *        F,2h,15m; G,16h,2h,1.5; F,4d,8h


end



######################################################################
#                      REWRITE CONFIGURATION                         #
######################################################################


# Remove any leading (sub)-domain eg:    @triumph.icparc.ic.ac.uk:user@???
#            convert to:    user@???
^@([^\.]*\.)?.icparc.ic.ac.uk:(.*)$    $2
#
# If a sub-domain is given, eg:     user@???
#               convert to:    user@???
^(..*)@([^\.]*).icparc.ic.ac.uk        $1@???
#
# If a no domain is given, eg:         user@triumph
#               convert to:    user@???
^([^@][^@]*)@([^\.]*)$            $1@???
# specials for user@doc and user@ic
^([^@][^@]*)@doc$                       $1@???
^([^@][^@]*)@ic$                        $1@???
#
# If a no domain is given, eg:         user
#               convert to:    user@???
^([^@][^@]*)$                $1@???


# End of Exim configuration file