Analyze the conversation process of sending mail between two hosts

The topic comes from "Wang Dao computer network postgraduate entrance examination review"

A:220 beta.gov simple mail transfer service ready
B:HELO alpha.edu
A:250 beta.gov

// 整个邮件的传送命令从 MAIL FROM 开始
// MAIL FROM 后面跟的是发件人的地址,本例中是 <[email protected]>
B:MAIL FROM:<smith@alpha.edu>

// 若 SMTP 准备好,则回答 250
A:250 mail accepted

// 接着客户端发送一个或多个 RCPT (recipient)命令
// 每一个 RCPT 命令都应该有对应的回应信息,如 250 OK 或者 550 No such user here
// 命令格式:RCPT TO:<收件人地址>
B:RCPT TO:<jones@beta.gov>
A:250 recipient accepted
B:RCPT TO:<green@beta.gov>
A:550 no such user here
B: RCPT TO:brown@beta.gov
A: 250 recipient accepted

// 在接收到 250 OK 后表示可以继续发送数据
// DATA 命令表示开始传送文件内容
B: DATA

// 正常情况下,服务器回复 354 start mail input; end with <CR><LF>.<CR> <LF>
// 单个 <CR><LF> 表示回车换行
// 两个 <CR><LF>.<CR><LF> 中间还有一个小点,表示邮件结束
A: 354 start mail input; end with <CR><LF>.<CR> <LF>
B: Date:Fri 27 May 2011 14:16:21 BJ
B: From:smith@alpha.edu
B:...
B:...
B:.
A: 250 OK

// 客户端发送 QUIT 命令表示请求释放连接
B: QUIT

// 服务端回复 221 表示同意释放 TCP 连接,关闭连接
A: 221 beta.gov service closing transmission channel.

note
1. The transport layer protocol used to transmit mail is TCP
2. When the mail protocol used is SMTP, the corresponding port number is 25

Guess you like

Origin blog.csdn.net/qq_34902437/article/details/102149646