Re: [Exim] Canonicalizing Addresses

Páxina inicial
Borrar esta mensaxe
Responder a esta mensaxe
Autor: Philip Hazel
Data:  
Para: John Lawless
CC: Exim List
Asunto: Re: [Exim] Canonicalizing Addresses
On Mon, 13 Sep 1999, John Lawless wrote:

> 1. Suppose the mail is (correctly) addressed to some alias of some local
> network machine. The internet router will attempt to send it to the
> internet. If no DNS entry is found, the router fails and the message goes
> to the local router. Can I be sure that the local alias will not **by
> accident** match anything in DNS and thereby get sent to some very wrong
> computer?


No, you can never be sure. Basically, the use of local nicknames is a
Bad Thing. However, we all do it! Here in Cambridge, from when we were
Internet newbies and didn't understand, we have departments whose
domains are ch.cam.ac.uk and cl.cam.ac.uk, and people sent mail to
user@??? and user@???. One just has to hope that those xxx names
don't one day appear in Switzerland or Chile. Actually, when the Chilean
domain first came up, they had a wildcard MX record for *.cl and some
local mail did disappear into a South American black hole for a while.

If you really want to be absolutely sure, then you have to have a list
of your local domains in a file, and run a router that checks that file
first. Unfortunately, the file cannot be /etc/hosts, because that isn't
in a suitable format. However, it would be trivial to write a script to
pick out all the hosts defined in /etc/hosts and make a suitable file.
You then need to ensure that the script gets run every time /etc/hosts
is updated. In this environment, you put the domainlist router *first*,
with a setting such as

route_list = lsearch;/list/of/hosts $domain byname

> 2. Suppose the mail is addressed to the internet. My internet connection
> is dialup. Suppose that the address is valid but the DNS lookup in the
> internet router fails by timeout or other benign, temporary, but common
> problem. The message then goes to the local (network) router which tries to
> connect to the internet domain directly. (Nothing restricts the local
> router to local network domains, right?)


Right, but Exim isn't as stupid as that. The default on temporary
routing errors is to defer and try again later. It only passes the
address on to the next router if you explicitly set the pass_on_timeout
option.


-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.