一、E-mail收发的一般过程。
图1:E-mail收发过程示意图
一般来说,E-mail的发信方式分为两种:一种是通过ISP或免费邮箱服务商提供的SMTP发信服务器中转的发信方式;另一种则是通过本机建立S MTP发信服务器直接发送电子邮件的方式。
1、通过邮件发信服务器发信的收发过程。
如图1所示,在这一发信过程中,首先由发信人通过电脑将电子邮件发送到SMTP发信服务器上,如果发信服务器收到的邮件合法,发信服务器通过一种“存储转发”技术,将该电子邮件在服务器上排队,当轮到该邮件发送顺序时,再由发信服务器将邮件发送到对方的收信服务器(M X邮件交换服务器)上,再由收信服务器转发到POP3服务器上(很多服务器系统的收信服务器和POP3服务器是同一服务器),最后由收件人通过电脑上的客户端软件将电子邮件从P OP3服务器上取走。
2、通过本机直接发送电子邮件的过程。
与上述发送过程不同的是,一些软件提供本机直接发送电子邮件到收信服务器上的功能,其实就是利用本机电脑建立一个SMTP发信服务器,由本机充当发信服务器的功能,绕过I SP或免费邮箱提供的SMTP发信服务器。因此本机既充当发信人电脑,又充当发信服务器,其发信过程与上述过程类似,但减少了发信人与发信服务器之间的网络传输过程和邮件的排队等待时间。
二、电子邮件收发失败的原因。
在上述发信过程中,只要有一个环节出现问题,都会引起E-mail收发失败,因此,电子邮件收发失败主要有以下一些因素:
1、没有正确地配置客户端软件的帐号、服务器属性等。
正确配置客户端软件的邮箱帐号、收发邮件的服务器属性是成功收发E-mail的关键。在这里需要配置的主要是两个服务器,即SMTP服务器和P OP3服务器以及帐号及密码。
SMTP服务器:即你用来发送邮件的服务器的地址,您的邮件将通过此服务器发送出去。如: xf.hb.cninfo.net。也可写成IP地址格式,如:61.136.152.3。
POP3服务器:保存了外界发给您的邮件。您通过邮件客户端软件,例如:Outlook Express将这些邮件下载到您的PC上,再处理这些邮件。如果SMTP和POP3是同一个主机,则两者相同,如均为:xf.hb.cninfo.net。同样一些免费邮箱的服务器一般要在前面加上“p op.",如:pop.163.com。
POP3和SMTP服务器一般有以下几种填写方式:
1) SMTP.xxxx.xxx pop.xxxx.xxx
2) xxxx.xxx xxxx.xxx
3) SMTP.xxxx.xxx pop3.xxxx.xxx
帐号:实际上是POP3服务器的帐号。您通过此帐号和相应的口令从POP3服务器上收取您的邮件。如:您的邮箱是t010405@xf.hb.cninfo .net,那么您的帐号就是@前的“t010405”。一些免费邮箱的帐号需要填写邮箱全称,而不仅仅是@前面的部分,如果你确认自己的密码正确无误,却不能通过密码验证,一般就是这个原因。
密码:您的帐号密码。
只有正确填写了这些信息,才能正确地发送电子邮件。初级用户最容易犯上述错误。
2、收件人的邮箱地址填写有错误。
要保证电子邮件能被正确地发送并被收信人收到,准确地填写收信人的邮箱地址是非常重要的。邮件不能被正常发送或收信人收不到邮件,往往是收信人邮箱地址填写不正确。目前由于大家在注册邮箱时,往往不容易注册到好的帐号名,因此大家不得不混合使用字母和数字以及一些特殊字符,而这往往容易造成抄写对方收件人邮箱地址时发生错误。例如:英文小写字母“l ”和阿拉伯数字“1”、英文小写字母“o”和阿拉伯数字“0”、下划线“_”和连字符“-”这些字符极为相似,在抄写收件人邮箱地址时尤其应注意。收件人邮箱地址填写错误,也分为两种情况:
1) 邮箱地址帐号错误:即收件人邮箱@前面的部分填写错误。 在这里又分为两种情况,第一种情况是地址帐号误填写成了其他存在的邮箱地址,如:发信人xiangkai68@sina.com希望将信件发送到zxk 71@21cn.com,地址却误填成了zxk717@21cn.com(该邮箱地址存在) ,则邮件没有被发送到希望的邮箱中,当然收件人收不到邮件了。另一种情况是地址帐号填写成了其他不存在的邮箱地址,如:收件人地址为:z xk712871@21cn.com(该邮箱地址不存在) ,则在采用邮件服务器方式发信过程中,一般并不提示发送错误,而是提示发送成功(一般在域名相同的邮箱之间发送电子邮件,发信服务器会判断邮箱地址是否正确并给出错误提示)。因为只要邮件能够正确地传送到发信服务器上,O utlook Express、Foxmail等邮件客户软件就会给出发送成功的提示。而随后几分钟,你会发现你的发信箱里会退回你发送的电子邮件,并通知你收件人邮箱地址非法或不存在。因此你若不及时检查你的收件箱,还以为对方已经收到电子邮件了呢?还有一种情况,收信服务器上若不存在相应的邮箱地址,有些收信服务器会“智能”地作出判断,将他们发送到可能正确的邮箱地址中,如:发送给j ohn@myorg.com的邮件被发送到了 johm@myorg.com中,不过一般会通知给发信人该信息。而采用本机直接发送电子邮件的客户端软件发送电子邮件时,由于它采用直接与收信服务器相联系的方式,因此在发送过程中,一般即会被告知收件人邮箱地址不存在。不过,当M X邮件交换服务器与POP3服务器不是同一服务器时,只要将邮件发送到MX邮件交换服务器上,也会被通知发送成功,但很快你能收到退信通知。
2) 主机地址域名错误:即收件人邮箱@后面的部分填写错误。 对于这种情况,在发送过程中,由于通过域名解析后无法找到相应的主机(服务器),所以邮件根本就发送不出去。
因此,在填写收件人邮箱地址时,应非常仔细,对于经常联系的朋友,可将他们加入到地址薄中,在发送信件时直接选用。对于收到的邮件最好采用回复的方式,以避免邮箱地址抄写错误。对于不能确定的邮箱地址,最好采用校验邮箱地址类软件先校验后再发送。
3、发信服务器出现故障.
对于发信服务器来说,出现故障是不可避免的。因为网络繁忙、黑客入侵等许多原因都可能使其发信服务器暂时出现故障而不能被访问,在这种情况下使用该邮件服务器发送电子邮件当然不能成功发送,我们只有等待发信服务器恢复正常后再发。而邮件服务器系统升级也可导致发信服务器I P地址等发生变化而导致原来的发信服务器不能被访问(有些用户在填写客户端软件的发信服务器时填写成IP地址形式)。你若拥有多个邮箱帐号,也可以换一个发信服务器发送。最好的办法当然是采用能够提供本机直接发送电子邮件的软件(例如:A dvanced Direct Remailer2.17,以下简称ADR,下载地址:)来发送,这样可绕过发信服务器而直接发送电子邮件到收信服务器上。另外,发信服务器最好填写成域名形式,不要填写I P地址形式,因为这样可避免邮件系统升级等原因而引起的发信服务器IP地址变化,从而不能正常发送电子邮件。
文章来源于领测软件测试网 https://www.ltesting.net/