All examples are based on the default sendmail.cf configuration file as it is shipped with IRIX. Note that sendmail macros and classes are both case sensitive. See "User-Configurable Macros and Classes".
Using the configmail script, set up mail like this:
If you are configuring the sendmail.cf file by hand, make the required adjustments to the following macros and classes:/usr/etc/configmail set directdomains NULL /usr/etc/configmail set localdomain NULL /usr/etc/configmail set forwarder NULL /usr/etc/configmail set rootdomain NULL
Note: If this is the only station you are configuring for sendmail, proceed to "Modifying the Aliases Database".
Each station in the network uses the same configuration. Using configmail on each station, make the changes shown below. For example, use configmail to set up mail on station lab1:
If you are configuring the sendmail.cf file by hand, make the required adjustments to the following macros and classes:/usr/etc/configmail set directdomains lab.fictitious.com /usr/etc/configmail set localdomain lab.fictitious.com /usr/etc/configmail set forwarder NULL /usr/etc/configmail set rootdomain NULL
This scheme has particular advantages if some stations frequently are powered off or are otherwise unable to communicate. In such a situation, one or more relay stations are more reliable; they are never or infrequently out of communication with the network and are designated as mail concentration points. When mail is sent to a station that is down, the mail travels to the relay station, where it is queued for later delivery, rather than being queued on the originating station. When the destination station returns to operation, it is more likely that the relay station will be up than the originating station. Therefore, the mail will be delivered to the destination station in a timely manner.
This hierarchical scheme also offers administrative advantages. For example, if a single station goes down for an extended period of time, or is simply failing to accept mail, the situation is easier to detect when there is a central mail queue. An administrator can check the mail queue on the relay station to see which stations are not accepting mail. If there were no relay station, mail to the down station would be queued on stations throughout the network, and the problem could be harder to spot.
All stations exist under the engr.fictitious.com domain. The stations in the network are named engr1, engr2, and engr3. The mail relay station is engr1. The other stations in the network are expected to send mail through engr1 rather than delivering it directly.
Each of the non-relay stations runs the same sendmail.cf configuration file. The sendmail.cf file on relay station engr1 has a slightly different D class definition.
For example, using the configmail script, configure mail on the relay station engr1:
Using the configmail script, set up mail on the remaining stations in the engr.fictitious.com domain. Note that the directdomains parameter is set to NULL on all stations except the relay station engr1./usr/etc/configmail set directdomains engr.fictitious.com /usr/etc/configmail set localdomain engr.fictitious.com /usr/etc/configmail set forwarder NULL /usr/etc/configmail set rootdomain engr.fictitious.com
If you are configuring the sendmail.cf file by hand, make the required adjustments to the following macros and classes:/usr/etc/configmail set directdomains NULL /usr/etc/configmail set localdomain engr.fictitious.com /usr/etc/configmail set forwarder NULL /usr/etc/configmail set rootdomain engr.fictitious.com
On the relay station engr1, make sure that the D class contains the engr.fictitious.com domain name so that engr1 sends mail directly to all stations in the engr.fictitious.com domain.
On the remaining stations, make sure that the D class is empty so that they do not send mail directly to other stations. (They are to send the mail to engr1.)
When you have completed this exercise, proceed to "Modifying the Aliases Database".
The entire local domain is named corp.fictitious.com. There is one subdomain under the corp.fictitious.com domain: fin.corp.fictitious.com. The stations in the corp.fictitious.com domain are corp1, corp2, and corp3. The stations in the fin.corp.fictitious.com domain are fin1, fin2, and fin3. corp3 is the relay for the corp.fictitious.com domain; fin3 is the relay for the fin.corp.fictitious.com domain.
The stations in each of the two domains (corp.fictitious.com and fin.corp.fictitious.com) are configured much like those described in the preceding subsections.
Using the configmail script, set up mail on the relay station corp3:
Using the configmail script, set up mail on the relay station fin3:/usr/etc/configmail set directdomains corp.fictitious.com
/usr/etc/configmail set localdomain corp.fictitious.com
/usr/etc/configmail set forwarder NULL
/usr/etc/configmail set rootdomain corp.fictitious.com
Using the configmail script, set up mail on the remaining non-relay stations in the corp.fictitious.com domain. Note that the directdomains parameter is set to NULL on non-relay stations./usr/etc/configmail set directdomains fin.corp.fictitious.com
/usr/etc/configmail set localdomain fin.corp.fictitious.com
/usr/etc/configmail set forwarder NULL
/usr/etc/configmail set rootdomain corp.fictitious.com
Using the configmail script, set up mail on the remaining non-relay stations in the fin.corp.fictitious.com domain. Note that the directdomains parameter is set to NULL on non-relay stations./usr/etc/configmail set directdomains NULL
/usr/etc/configmail set localdomain corp.fictitious.com
/usr/etc/configmail set forwarder NULL
/usr/etc/configmail set rootdomain corp.fictitious.com
If you are configuring the sendmail.cf file by hand, make the required adjustments to the following macros and classes:/usr/etc/configmail set directdomains NULL
/usr/etc/configmail set localdomain fin.corp.fictitious.com
/usr/etc/configmail set forwarder NULL
/usr/etc/configmail set rootdomain corp.fictitious.com
For all stations in the fin.corp.fictitious.com domain, change the D macro to contain the fin.corp.fictitious.com domain name.
On the relay station fin3, make sure that the D class contains the fin.corp.fictitious.com domain name so that fin3 will send mail directly to all stations in the fin.corp.fictitious.com domain.
On the remaining stations in the network, make sure that the D class is empty so that they do not send mail directly to other stations.
This discussion applies to mail environments of all types. Whatever the form of your internal mail environment, whenever you want to use a mail gateway station between your internal mail network and the external world, a forwarder station is required. The sendmail configuration for using this forwarder station is exactly the same for all stations on the internal side of the gateway.
The internal mail environment consists of the domain corp.fictitious.com and any or all domains under corp.fictitious.com (fin.corp.fictitious.com). All stations within the corp.fictitious.com domain are capable of communicating with each other. For example, there is no physical restriction to prevent station fin1.fin.corp.fictitious.com from sending mail to corp1.corp.fictitious.com.
Station corp2.corp.fictitious.com can connect to all stations within the corp.fictitious.com domain and can also connect to stations in other domains, such as engr.fictitious.com. Station corp2.corp.fictitious.com is therefore the forwarder station to all domains beyond the corp.fictitious.com domain. In this example, station corp2.corp.fictitious.com is aliased to corp2 for ease of addressing in the internal mail environment.
In addition to the changes to sendmail.cf required for the internal mail environment, make the following changes to the sendmail.cf file on all stations within the corp.fictitious.com domain. Using the configmail script, change the appropriate parameter:
/usr/etc/configmail set forwarder corp2.corp.fictitious.com corp2If configuring the sendmail.cf file by hand, make the required adjustments to the following macros and classes:
The sendmail.cf file directs sendmail to read the /etc/uucp/Systems file on startup. All UUCP station names are read from this file, and stations marked "domain-machine" are noted. If a UUCP pathalias database is maintained on the station, the location of the database is set with the P macro.
If the /etc/uucp/Systems file indicates that there are stations connected to the local station through UUCP, sendmail sends mail received on the local station, and addressed to one of the stations described in the /etc/uucp/Systems file, on to the proper place. If the P macro is set and points to a valid UUCP pathalias database, sendmail will attempt to find a UUCP path to a station for which it cannot find an address or MX record. If the database returns a good UUCP path to the destination station, sendmail attempts to send the mail to the left-most station on the path.
Depending upon the network environment, UUCP mail may range from the only form of network mail to one part of a much larger network mail environment. The following sections describe a common technique for adding UUCP to an existing local area mail network.
Sample Environment
The local domain is named uk.com. Station uk1.uk.com is the forwarder station, as described in "Complex (Forwarder) Hierarchical (Relay) Network With Domains" in "Customizing the sendmail.cf File".
To avoid forwarder loops, the default sendmail.cf file permits only one forwarder station to be configured. Therefore, station uk1.uk.com is also the UUCP forwarder station.
Changes to sendmail.cf
No changes to sendmail.cf are necessary beyond those required to configure station uk1.uk.com as the forwarder station. (See "Complex (Forwarder) Hierarchical (Relay) Network With Domains".) If station uk1.uk.com maintains a pathalias database, the P macro should be set to the pathname of the pathalias database.
Other Changes
The /etc/uucp/Systems file must also be configured before sendmail will see any of the UUCP-connected stations. For more information see Chapter 7, "UUCP."
When you have completed this procedure, look ahead to "Modifying the Aliases Database".
If a network does not use domain addressing, specific changes are required in the sendmail.cf file on all stations in the network. First, make changes to the sendmail.cf file as described in the appropriate examples in this section. Next, make the following changes, even if they replace changes you have just made.
Using the configmail script, set up mail on each station on the network.
If you are configuring the sendmail.cf file by hand, make the required adjustments to the following macros and classes:/usr/etc/configmail set directdomains NULL
/usr/etc/configmail set localdomain NULL
/usr/etc/configmail set rootdomain NULL
For more information about the resolv.conf file, see the resolv.conf(4) reference page.hostresorder local bind yp
When you have completed this procedure, proceed to "Modifying the Aliases Database".