网络管理员指南 -13.电子的邮件 -4>邮件如何安排工作?

/ns/wz/net/data/20020808035847.htm

网络管理员指南 -13.电子的邮件 -4>邮件如何安排工作?


本文出自:http://www.linpus.com.tw 作者: Andrew Anderson


引导一个信息到接收主机的过程被称为routing.除了从发送位置查找一个路径到目标之外,它还涉及错
误检查个速度与花费优化的内容。

一个UUCP站点处理路径的方法与任何Internet站点有很大区别。在Internet上,引导数据到接收主机的
主要任务(当它被它的IP地址知道的时候)是由IP网络层进行的。在UUCP区的时候,用户必须提供通道,
或者通道由邮件传送代理产生。


--------------------------------------------------------------------------------

Internet上的邮件路由
Internet上的邮件路由全部依靠目标主机是否所有的特定邮件路径已经执行。默认是通过查找它的IP地
址并留下数据实际的路由到IP运送层来直接递送信息到目标主机。
大多数的站点会通常想要引导所有的入口邮件到一个高级的邮件服务器,它可以处理所有这些交通,并
让它在本地分发这个邮件。要发布这个服务,站点在DNS数据中为它们的本地域公布一个称为MX的记录。
MX支持Mail Exchanger并基本指出服务主机在这个域上为所有的机器成为一个邮件转发器。MX记录还可
以用来处理那些自己没有连接到Internet的主机的交通,例如UUCP网络,或者是含有装载秘密信息的主
机的公司网络。
MX记录还有一个辅助的参数。这是一个正整数。如果几个邮件交换器存在在一个主机上,邮件传送代理将
会试着以最低的preference值来传送信息到交换器,并且只有它失败的时候才会试着使用比较高值的主机。
如果本地主机对于目标地址就是一个邮件交换器,它不会转发信息到任何比它自身高的参数的MX主机上去,
这是一个避免循环传送的安全方法。
假定一个组织,称为FOOBAR INC想要他们所有的邮件都由他们称为MAILHUB的机器处理。他们将有一个MX的
记录,就象在DNS中的这样:
foobar.com IN MX 5 mailhub.foobar.com
这宣布mailhub.foobar.com作为一个FOOBAR。COM的邮件交换器,使用的参数值是5。一个希望处理一个信息
到JOE・GREENHOUSE。FOOBAR。COM的主机将检查DNS的FOOBAR。COM,并找到指向MAILHUB的MX记录。如果没
有MX使用的参数小于5,信息将被递送到MAILHUB,之后发送它到GREENHOUSE。
以上实际不只是一个MX如何工作的简介。在INTERNET上有关邮件路由的更多信息请参照RFC-974。




--------------------------------------------------------------------------------
UUCP世界中的邮件路由

在UUCP网络上的UUCP路由比在Internet上的要复杂的多,因为传输软件不会自己进行任何的路由。早期,所有
的邮件都需要使用捆绑路径来显示地址。捆绑路径指定一个主机列表,通过它来转发信息,由叹号分开,并且
有用户名跟随。在一个名为moria的机器上定位一个字母到Janet用户,你可能使用路径eek!swim!moria!janet.
它可能将你的邮件从主机发送到eek,从那里开始流动并最终到达moria.

这个方法的明显的缺点是它需要你记住有关网络布局、快速连接等等的许多东西。更糟糕的是,网络布局中的
更改―象连接被删除或者主机被移动-可能简单的因为你不知道改变而导致信息失败。最终,为了防止你移动到
一个不同的位置,你将很可能必须更新所有这些路径。

然而,一件事使使用来源路由成为必要是模糊主机名的存在:例如,假设有两个站点都称为moria,一个在美国,
而另一个在法国。哪个站点现在是moria!janet 想要的?这可以通过指定使用什么路径可以到达moria来弄清。

弄清主机名的第一步是The UUCP Mapping Project的建立。它位于Rutgers大学,并注册所有的官方UUCP主机名,
以及在他们的UUCP邻居上的信息和地理位置,确认没有没有使用两次的主机名。由Mapping Project收集、的信息
作为Usenet Maps出版,它被正规的通过Usenet传播。在地图上的一个标准的系统登录(在移动命令之后)象这样:

moria
bert(DAILY/2),
swim(WEEKLY)
这个登录表达moria有一个连接到bert,它在一天内被呼叫了两次,并且swim在一周内呼叫了两次。我们将在下
面回到地图文件格式的详细内容。

使用地图上提供的连通性信息,你可以自动从你的主机上产生完整的路径名到任何指定的站点。这个信息通常被
保存在路径文件中,有时被称为pathalias database。假设地图表明你可以通过ernie达到bert,于是从上面地
图snippet上产生的的一个moria的pathalias登录可能象这样:

moria ernie!bert!moria!%s
如果你现在有一个指定的地址janet@moria.uucp,你的MTA将挑选上面显示的路径,并同一个带有
bert!moria!janet地址的信封一起发送信息到ernie。

然而,从完整的Usenet地图中建立一个路径文件不是一个好主意。它们中提供的信息通常都是扭曲的,而且有时
是过时的。因此,只有一些主要的主机使用完整的UUCP世界地图来建立它们的路径文件。大多数的站点只为它们
邻居的站点保留路由信息,并发送所有邮件在他们数据中无法找到的站点到一个有更为完整路由信息的更聪明的
主机上。这个策略称为smart-host routing(聪明主机路由)只有一个UUCP邮件连接的主机(称为leaf sites)
不会为它们自己做任何的路由,它们完全依靠它们的聪明主机。


--------------------------------------------------------------------------------
UUCP和RFC-822的混合

最好的治愈UUCP网络中的邮件路由的问题的方法是在UUCP网络中采用域名系统.当然,你无法通过UUCP询问一个名
字服务器.然而,许多UUCP站点形成了许多小的域,它们在内部协调它们的路由. 在这些地图中,这些域公布一个或
者两个主机作为它们的邮件网关,这样在域中不需要每个主机都有一个地图入口.网关处理所有流入和流出域的邮
件.域中的路由计划外界是完全无法看到的.

使用上面介绍的聪明主机的路由计划会工作的非常好.全球路由信息主要由网关单独完成;在一个域中的小的主机将
会同一个小的手写路径文件在一起,这个文件列出在它们域中的路径的列表以及通往邮件集线器的路径.甚至邮件网
关不再需要为世界上每一个单独的UUCP主机路由信息.除了域提供服务的完整的路由信息之外,它们现在只需要在他
们的数据中有通向整个域的路径.例如, pathalias登录显示下面将为在sub.org域中的所有的邮件站点发送到smurf:

.sub.org swim!smurf!%s
任何寄往地址claire@jones.sub.org的邮件都将被发送到swim,信封上的地址是:smurf!jones!claire.

域名的层次组织允许所有的邮件服务使用较少的路径混合更多的特定的路径.例如,一个在法国的系统可能需要为子
域fr指定路径.,但是在美国域中为主机发送任何邮件到一些在美国的系统.使用这种方法,域基础的路径(正象这个
技术所描述的)大大的减少了路由数据的大小和上面所需要的管理.

然而,在一个UUCP环境下使用域名的主要好处是它的附件RFC-822允许UUCP网络和Internet之间的简单的通路.现在的
许多UUCP域与一个作为它们的聪明主机的Internet网关有一个连接.通过Internet发送邮件速度更快,并且路由信息也
更为可靠,因为Internet主机可以使用DNS而不是Usenet Maps.

为了可以从Internet访问,UUCP为基础的域有他们自己的Internet网关来为他们公布一个MX记录(MX记录在上面介绍了).
例如, 假定moria属于orcnet.org域作为它们的Internet网关. Moria就会使用gcc2作为它的聪明主机,这样所有外部
域的邮件都通过Internet来处理.另外, gcc2会为orcnet.org公布一个MX记录,并且发送orcnet站点上的所有邮件到
moria.

剩下的唯一问题是UUCP传送程序无法处理完全合格的域名.大多数的UUCP组的设计用来处理大于8个字节的站点名,有
些甚至更少,并且使用象点这样的非文字的字符对于大多数来说是不可能的.

因此需要一些在RFC-822名字和UUCP主机之间的计划. 计划的 方式不完全依靠执行.绘制FQDNs到UUCP名字的一个通
常的方法是这样使用pathalias文件:

moria.orcnet.org ernie!bert!moria!%s
这将从一个指定一个完全符合域名的地址中产生一个单纯的UUCP类型的捆绑路径.一些邮件处理器为此提供一个特殊
的文件: sendmail,例如为它使用uucpxtable.当发送邮件从一个UUCP网络到Internet的时候需要相反的传输(通俗称
为domainizing).因为在特定的地址邮件发送器使用完全合格的域名,这个程序可以在转发信息到聪明主机的时候通过
不从信封地址上将域名移动来避免.它们经常通过附加pseudo-domain uucp来本地化.