[net.mail] Name space of users

matt@ncr-sd.UUCP (Matt Costello) (09/19/86)

Summary:


The issue of how to address mail to a local (in the general sense) user
without having to remember the users account, machine and domain has
come up recently (see below) and I thought I'd share our solution to
the problem.

In article <1246@umd5> zben@umd5.umd.edu (Ben Cranston) writes:
>
>> I have it set up to work as follows:
>> 'mail user' will go to the user on the current machine, if he exists.
>> If not, it will go to the machine on our local network that the user's
>> account is on.  These tables are kept up to date automatically.  The
>> rationale is that users should not have to remember on which machine
>> another local user lives.
>
>This can be done because the Computer Science Department's users are limited
>in number and closely communicate.  What works for 100 users does not always
>work for 10,000 (consider the N log N time to sort their names, for example).
>
>In particular, the Department owns its own machines, and can make the rule:
>"if there exists a jim@foo and a jim@bar they are the same person!" stick.
>With every department on campus owning its own computers, *I* cannot make
>such rules.  Thus this scheme cannot in the general case be make to work.
> 

As a simple solution to the above problem we special case all user names
with embedded periods in our mail router.  Rather than passing them to
localmail (or its equivalent) our router just executes a different
mailer agent which just aliases them against our phone database.  If the
addressee is present and has an email address then the email address there
is passed back to the router for further resolution.  As an example:

	Matt.Costello
has no system address and so is a local address.  Because it contains
a period the "nameserver" mailer is used instead of "local".  The
nameserver mailer causes our database program to be executed looking
for an alias to Matt.Costello.  It finds an entry that matches and so
returns the address
	matt@ncr-sd
to the mail router.  The mail router qualifies the domain name to
	matt@ncr-sd.SanDiego.NCR.com
and then routes it to me from any machine in our domain.

The matching algorithm used is case insensitive, so matt.costello and
MATT.COSTELLO will work equally well.  Currently the matching is done
using substrings so that matt.c and m.cost will also work, while m.c
would match multiple entries and cause the delivery to fail, returning
the message back to the sender.  I've plans to convert the matching
algorithm to a modified soundex to fix things like Bill and William
being different.

---
Matt Costello,	<matt@ncr-sd.SanDiego.NCR.com> (not registered yet)
		<matt.costello@SANDIEGO.NCR.com>
		{ihnp4,cbosgd,dcdwest,sdcsvax}!ncr-sd!matt
-- 
Matt Costello, matt@ncr-sd.SanDiego.NCR.com
	{sdcsvax,ihnp4}!ncr-sd!matt