Mail Addressing
The mail address contains the name of the recipient and the system where the mail message is delivered. When you are administering a small mail system that does not use a nameservice, addressing mail is easy: Login names uniquely identify users.
Mail addressing for more complex sites is also easy when you use DNS Mail Exchange (MX) records.
UUCP Route-Based Addressing
UUCP route-based addressing requires the sender of an e-mail message to specify not only the local address (typically a user name) and its final destination but also the route that the message must take to reach its final destination.
NOTE
UUCP route-based addressing is shown here for historical reasons. These days, almost no one uses this form of addressing.
Route-based addresses, which are fairly common on UUCP networks, use the following format.
host!path!user
Whenever you see an exclamation point (bang) as part of an e-mail ad_dress, all (or some) of the route was specified by the sender. Route-based addresses are always read from left to right. For example, the following e-mail address is sent to user winsor on the system named ucbvax by going first from castle to the address sun, then to sierra, then to hplabs, and finally to ucbvax. (Note that this is an example and not an actual route.) If any of the four mail handlers is out of commission, the message is delayed or returned as undeliverable.
castle!sun!sierra!hplabs!ucbvax!winsor
Route-Independent Addressing
Route-independent addressing requires the sender of an e-mail message to specify the name of the recipient and the final destination address. Route-in_dependent addresses usually indicate the use of a high-speed network, such as the Internet. In addition, newer UUCP connections frequently use domain-style names. Route-independent addresses use the following format.
user@host.domain
The increased popularity of the domain hierarchical naming scheme for computers across the country is making route-independent addresses more common. In fact, the most common route-independent address omits the host name from the address and relies on DNS MX records in the destination domain to properly identify the final destination of the e-mail message.
user@domain
Route-independent addresses are read by searching for the @ sign and then reading the domain hierarchy from the right (the highest level) to the left (the most specific address to the right of the @ sign). For example, an e-mail address such as winsor@Eng.sun.com is resolved starting with the .com commercial domain, then the sun company name domain, and finally the Eng department domain.
How Mail Addressing Works
Assuming that you use the default rule set in the sendmail.cf file, the following examples show the routes an e-mail message can take. The route is determined by how the e-mail is addressed.
-
Mail within a domain addressed with only the user's login name goes to the aliases file on the mail hub (or to the Aliases database) and is sent to the address found in the database. In the example shown in Figure 5, mail ad_dressed to the user winsor goes to the mail hub and is forwarded to the host named castle.
Figure 5 Delivery Path for Mail Addressed with a User Name Only
-
Mail within a domain addressed with the user's login name and host name goes directly to the host system without any additional processing. In the example shown in Figure 6, mail addressed to the user winsor at the host named castle goes directly to the host named castle.
Figure 6 Delivery Path for Mail Addressed with the User Name and the Host Name
-
Mail within a domain addressed with the user's login name and domain name goes to the aliases file on the mail hub (or to the Aliases database). If the mail hub has an alias, it redirects the message to the host system. In the ex_ample shown in Figure 7, mail addressed to the user winsor@Eng goes to the mail hub and is then forwarded to the host named castle.
Figure 7 Delivery Path for Mail Addressed with the User Name and the Domain Name
Mail addressed with the user's name and a fully qualified domain name goes to the mail hub, which sends it to the gateway. The gateway sends the message to the host system. When the mail comes from the recipient's domain, however, the mail hub recognizes the domain name and does not send the message to the gateway host. In the example shown in Figure 8, mail addressed to the user ignatz@Eng.sun.com from outside the engineering domain goes to the sender's mail hub and then to the sender's gateway host. It is then forwarded to the recipient's gateway host, the recipient's mail hub, and finally to the host named oak.
Figure 8 Delivery Path for Mail Addressed with a User Name and a Fully Qualified Domain Name
In Step 1, the e-mail is sent by a user on oak.eng.sun.com to jim@starlight.com. Note that the recipient's personal system is bluejay.starlight.com but the mail spool for jim is NFS mounted from mailhub.starlight.com. The e-mail is picked up by sendmail on oak.eng.sun.com and transmitted to mailhub.eng.sun.com.
In Step 2, local sendmail determines that the e-mail is to someone outside the eng.sun.com DNS domain, so the e-mail is sent to sendmail on gateway.eng.sun.com for delivery over the Internet.
In Step 3, sendmail on gateway.eng.sun.com looks up the DNS MX record for starlight.com. In this case, it points to gateway.starlight.com, so sendmail transmits the message to the sendmail program on gateway.starlight.com.
The sendmail program on gateway.starlight.com is programmed to forward all e-mail to user@starlight.com to mailhub.starlight.com, which is done in Step 4. On mailhub.starlight.com, the message is handed off to the local delivery agent and the message is appended to Jim's mailbox.