telnet命令发送邮件
邮件的发送是基于smtp协议的。邮件客户端软件给smtp服务器传送邮件和smtp服务器之间传送邮件也都是基于smtp协议的。邮件客户端软件接受邮件是主要基于pop3协议的。
 
下面介绍利用windows命令telnet 基于smtp协议发送邮件。
这里是用yahoo邮箱,其他邮箱可能会存在这样或那样的小问题,而我的目标很简单,只是想尽快用telnet命令发送一封邮件测试一下。
 
这里用到smtp协议的5个命令。下面列举出所有:
ehlo    见面当然得打招呼了,后面接任意名字
mail from:    说明邮件来自哪里,不一定为邮件地址,不过最好还是写成正确的email地址
rcpt to:    说明邮件发送到哪里,一定要为正确的email地址
data    发送的正文,结束为:回车,.,回车。即两个回车中间一个点
quit    断开连接
 
1,  打开windows命令窗口,
键入:telnet mta-v1.mail.vip.cnb.yahoo.com
   mta-v1.mail.vip.cnb.yahoo.comyahoo邮件服务器,25 是服务器的端口号,
Yahoo邮件服务器的mx nslookup -qt=mx yahoo.com.cn
成功连接的响应为:220 mta115.mail.cnb.yahoo.com ESMTP YSmtp service ready
   前面的 220 即为响应码,只要它是 220 就表示成功连接了,
   其中的 ESMTP 表示 扩展SMTP协议,
 
2,成功连接后就想服务器打招呼吧,
      键入:ehlo
 
3,输入发件人,
      键入:mail from: <studyjavamail@sina.com>
      成功将响应:250 Ok
      发件人最好写成正确的email地址,因为一般邮件服务器也会验证的
 
4,输入收件人,
      键入:rcpt to: <studyjavamail@sina.com>
      成功将响应:250 Ok
      收件人必须是正确的email地址,
      并且可以输入多个 rcpt to 命令,将同时给多个email地址发送邮件
 
5,写邮件内容,
      键入:data + 内容),以回车回车 结束内容的书写,
     
6,断开连接,
      键如:quit
 
7,赶紧登陆邮箱看看吧,看是否收到了。