学习计算机网络自顶向下,SMTP协议
步骤一:开启Windows的telnet客户端
打开“控制面板”中“程序”中的“启用或关闭Windows功能”
勾选“Telnet客户端”开启服务
步骤二:打开cmd
这个大家都会
步骤三:命令
SMTP默认端口号是25
telnet smtp.qq.com 25
之后会进入telnet操作界面
S表示SMTP客户端,C表示SMTP服务器
S:helo hostname(谁便名字都可以)
C:250-newxmesmtplogicsvrsza5.qq.com-9.22.14.83-53097183250-SIZE 73400320250 OK
登录自己的邮箱,base64编码解码网站
S:auth login
C:334 VXNlcm5hbWU6
S:自己qq邮箱的base64编码
C:334 UGFzc3dvcmQ6
S:自己qq邮箱SMTP服务授权码的base64编码
如果自己的授权码不对或者输入了qq邮箱密码会出现下面的报错:
535 Login Fail. Please enter your authorization code to login. More information in http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256
打开后面网址可以看到qq邮箱关于授权码获得的步骤(要是自己的SMTP服务已经开启了,可以先关闭在开启就可以得到授权码,如果还有其他获得办法请告诉我)
如果授权码正确会得到:
C:235 Authentication successful
继续填写自己发送方邮箱和接收方邮箱
S:mail from:<365719479@qq.com>
C:250 OK.
S:rcpt to:<365719479@qq.com>
C:250 OK.
后面就可以写邮件了!!
CR:回车 ,LF:换行
Unix系统里,每行结尾只有“<换行>”,即"\n";Windows系统里面,每行结尾是“<换行><回车>”,即“\n\r”;Mac系统里,每行结尾是“<回车>”,即"\r";。一个直接后果是,Unix/Mac系统下的文件在 Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
所以在cmd下,邮件的结尾使用“回车键“+“.”+回车键”就好了。
S:data
C:354 End data with <CR><LF>.<CR><LF>.
S:要发送的内容要换行,直接“回车”即可,邮件内容最后以“.”结尾
C:250 OK: queued as.
这样你的qq邮件就会收到一个无发件人的邮件,成功!
SMTP用的是持续连接,如果发送邮件服务器有几个报文同时发往同一个接受邮件服务器,那么它可以通过同一个TCP连接发送所有的报文。对每一个报文,都需要用一个新的“mail from”开始,用句点“.”结束。当所有邮件发送完毕后可以关闭
S:quit
C:221 Bye.
OVER,有任何问题欢迎评论或者发邮件~