您的位置:首页 > 理论基础 > 计算机网络

【计算机网络】:SMTP协议详解(如何在控制台发邮件)

2015-12-01 00:42 609 查看
SMTP的连接和发送过程

(a)建立TCP连接

(b)客户端发送HELO命令以标识发件人自己的身份,然后客户端发送MAIL命令;

服务器端正希望以OK作为响应,表明准备接收


(c)客户端发送RCPT命令,以标识该电子邮件的计划接收人,可以有多个RCPT行;

服务器端则表示是否愿意为收件人接收邮件


(d)协商结束,发送邮件,用命令DATA发送

(e)以.表示结束输入内容一起发送出去

(f)结束此次发送,用QUIT命令退出

附上控制台的相关代码:

C: telent SMTP.163.com 25  //以telenet方式连接163邮件服务器
S: 220 163.com Anti-spam GT for Coremail System //220为响应数字,其后的为欢迎信息
C: HELO SMTP.163.com //除了HELO所具有的功能外,EHLO主要用来查询服务器支持的扩充功能
S: 250-mail
S: 250-AUTH LOGIN PLAIN
S: 250-AUTH=LOGIN PLAIN
S: 250 8BITMIME //最后一个响应数字应答码之后跟的是一个空格,而不是'-'
C: AUTH LOGIN   //请求认证
S: 334 dxNlcm5hbWU6  //服务器的响应——经过base64编码了的“Username”=
C: Y29zdGFAYW1heGl0Lm5ldA==  //发送经过BASE64编码了的用户名
S: 334 UGFzc3dvcmQ6  //经过BASE64编码了的"Password:"=
C: MTk4MjIxNA==  //客户端发送的经过BASE64编码了的密码
S: 235 auth successfully  //认证成功
C: MAIL FROM: bripengandre@163.com  //发送者邮箱
S: 250 … .  //“…”代表省略了一些可读信息
C: RCPT TO: bripengandre@smail.hust.edu.cn //接收者邮箱
S: 250 … .    // “…”代表省略了一些可读信息
C: DATA //请求发送数据
S: 354 Enter mail, end with "." on a line by itself
C: Enjoy Protocol Studing
C: .
S: 250 Message sent
C: QUIT //退出连接
S: 221 Bye
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: