The rule based solution is simple to implement, but lacks power. In particular, mailbox migration as discussed in section 7 is restricted, as the host that mail for a user resides is dictated by a simple rule. Making more complicated rules for this soon defeats the elegance of this solution as maintaining these rules would soon become a major chore.
A more flexible approach is to define a map that can redirect each individual's mail to the server that their mail is hosted on. If a user's mailbox needs to be moved to another server, then it is a simple matter of changing the entry for that user. The map should be in the form of a hash, to enable fast retrieval of data for an individual user. Conveniently, many MTAs including sendmail [All] and qmail using the fastforward add on [Nel] provide such a map in the form of an aliases file.
Aliases are typically used to assign additional addresses to a single mailbox. For instance, email@example.com might be aliased to firstname.lastname@example.org This allows flexibility in directing mail for sales, so if Jill no longer handles the mail for sales, then this alias could be changed. Aliases are also commonly used to distribute mail to multiple addresses. Majordomo, a list manager relies on aliases to distribute mail. For the application of multiplexing mail, aliases are used to alias an address to the same address on the mail server that the user's email is stored on.
For instance, if mail for John resides on the server ingrid.bigisp.com and mail for Alison lived on fritz.bigisp.com then the aliases file would be as follows;
john: email@example.com alison: firstname.lastname@example.org
If sendmail is being used as the MTA then the aliases flat file is rebuilt into a hash using the command sendmail -bi.