R: 250 BBN-UNIX.ARPA
关闭联结的例子
S: QUIT
R: 221 BBN-UNIX.ARPA Service closing transmission channel
3.6. 转发
转发路径可能是如下格式:"@ONE,@TWO:JOE@THREE",在这里,ONE,TWO
和THREE是主机。这种格式用于强调地址和路径的区别。邮箱是绝对地址,路
径是关于如何到达的信息。这两个概念不应该被混淆。
概念上,转发路径的元素被移动到回复路径作为从一个SMTP服务器到另一
个SMTP服务器的信息。回复路径是一个反向数据源路径,例如从当前信息的位
置到发起者的位置。当一个SMTP服务器从转发路径中删除自己的标记并将它插
入到回复路径中时,它必须使用它发送环境能够理解的名称来进行,以防它的
名称在不同的环境中被理解为不同的名字。
如果当SMTP接收到信息的转发路径的第一个元素不是此SMTP的标记时,此
元素不从转发路径中删除,而被用来决定下一个应该发送到的SMTP服务器。在
任何情况下,SMTP都将自己的标记加入反向路径中。
使用源路径时,接收SMTP接收转发的邮件并发送到另一接收SMTP服务器上。
接收服务器可以接受或拒绝转发本地用户的邮件。接收SMTP通过将它自己的标记
从转发路径移至回复路径的开始处来改变命令参数。这时,接收SMTP变成了发
送SMTP,也就建立了到下一个转发路径中SMTP的通道,然后,它向这个SMTP发
送邮件。
在回复路径上的头一个主机应是发送SMTP命令的主机,在转发路径上第一个
主机应是接收SMTP命令的主机。
注意:转发路径和回复路径出现在SMTP命令和应答中,但不一定要出现在信
息中。也就是说,没有必须要这样的路径特别这种格式出现在信息头的"To:",
"From:"和"CC:"等域中。
如果SMTP服务器接受了转发任务,但后来它发现因为转发路径不正确或者
其它原理无法发送邮件,它必须建立一"undeliverable mail"信号,将它此信号
送到此信的发主者那里。
此信号必须是从此主机的SMTP服务上发出的,当然了,此服务器不应该再报
告出错信息的错误。一种阻止这种出错报告循环的情况是在信号的邮件命令的回
复路径上置空。在传送此信息时,允许将回复路径也置为空。一个MAIL命令后的
回复路径为空表现为如下形式:
MAIL FROM:<>
下例中显示了不可传送的邮件信息。此信息是对从HOSTW上的JOE发出的邮件
经过在HOSTX需要经过HOSTZ到达HOSTY时出错的回应。我们看到的例子是在HOSTX
和HOSTY之间发生的。
不可传送邮件信息的例子
S: MAIL FROM:<>
R: 250 ok
S: RCPT TO:<@HOSTX.ARPA:JOE@HOSTW.ARPA>
R: 250 ok
S: DATA
R: 354 send the mail data, end with .
S: Date: 23 Oct 81 11:22:33
S: From: SMTP@HOSTY.ARPA
S: To: JOE@HOSTW.ARPA
S: Subject: Mail System Problem
S:
S: Sorry JOE, your message to SAM@HOSTZ.ARPA lost.
S: HOSTZ.ARPA said this:
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 中文版 协议 传输 简单 邮件 命令 发送 路径 接收 一个 |
注册
个人空间
