邮箱系统原理——基本原理

1、邮件服务器种类

SMTP服务器:用于替用户发送和接受外面发送给本地用户的邮件(相当于邮局的接受部门)

POP3/IMAP服务器:由于帮助用户读取SMTP服务器接收进来的该用户的邮件(相当于专门为前来取包裹的用户提供服务的部门)

2、邮件客户端软件

负责与邮件服务器通信,用于帮助用户将邮件发送给SMTP服务器和从POP3/IMAP邮件服务器读取用户的电子邮件。

3、邮件传输协议

SMTP协议:定义了邮件客户端软件与SMTP服务器之间,以及两台SMTP服务器之间的通信规则

POP3协议:客户端与POP3服务器之间的通信规则

IMAP协议:对POP3协议的一种扩展

4、DNS服务器

保存主机名与IP地址的映射关系

5、域名的解析原理

当客户机通过一台DNS服务器检测某主机名对应的IP 地址时,该DNS服务器先检测该请求的主机名是否是自己所管理的域或子域,如果是则检索自己的域或子域,然后将结果返回。如果不是,将向管理根域的DNS服务器查询主机名中的顶级域名的DNS管理服务器的IP地址,再由顶级域名的DNS服务器查询二级域名的DNS服务器,依次递推,直到找到最低级别的域的DNS管理服务器,查到对应IP。DNS服务器收到子域中的主机名查询时,这时候会有两种方式:1、自己往下查询(可以保存查询到的映射的缓存一段时间),然后返回结果,发送给客户端。2、把子域DNS服务器的IP地址给查询者,让查询者自己去查

动态DNS系统

家庭拨号上网,出现IP地址动态分配,动态DNS系统有两部分组成:动态DNS服务器程序和客户端程序。当计算机每次拨号上网分配了新的IP地址后,客户端程序将向动态DNS服务器报告自己的IP地址让它更新映射,动态DNS服务器会禁用其他的DNS服务器缓存它的记录信息。但是这样子,该计算机用户每次还是按照一个固定的主机名来访问这些网络服务的。(客户端需要先下载安装动态DNS客户端软件)

MX记录

域名和其SMTP服务器的映射关系称为MX记录。[email protected],其中163.com则是域名。这里要区分开:主机名www.baidu.com中DNS服务器是靠主机名和IP去映射的,而邮箱地址是靠域名和IP地址去映射的。

dos命令行中用:nslookup命令可以查到计算机当前使用的DNS服务器的IP,命令“set type=mx",然后输入域名”sina.com"可以看到如下结果

C:\Users\Administrator>nslookup
默认服务器:  dns1.bnuep.com
Address:  172.16.5.133

> set type=mx
> sina.com
服务器:  dns1.bnuep.com
Address:  172.16.5.133

非权威应答:
sina.com        MX preference = 10, mail exchanger = freemx2.sinamail.sina.c
n
sina.com        MX preference = 10, mail exchanger = freemx3.sinamail.sina.c
n
sina.com        MX preference = 5, mail exchanger = freemx.sinamail.sina.com
sina.com        MX preference = 10, mail exchanger = freemx1.sinamail.sina.c
n

sina.com        nameserver = ns1.sina.com.cn
sina.com        nameserver = ns2.sina.com
sina.com        nameserver = ns2.sina.com.cn
sina.com        nameserver = ns3.sina.com.cn
sina.com        nameserver = ns1.sina.com
freemx1.sinamail.sina.com.cn    internet address = 202.108.3.242
freemx2.sinamail.sina.com.cn    internet address = 218.30.115.106
freemx3.sinamail.sina.com.cn    internet address = 60.28.2.248
ns1.sina.com.cn internet address = 202.106.184.166
ns2.sina.com.cn internet address = 61.172.201.254
ns3.sina.com.cn internet address = 202.108.44.55
其中有三个是freemx,是可以提供服务的,而如果再次用同样的命令查询的话,一般这三个的顺序是不一样的,这是因为轮循排列后再返回给外界的,通常是选择其中的第一个IP地址来进行通信。这样三台SMTP服务器之间实现了负载均衡

6、电子邮件的工作原理

一个QQ邮箱的A发给163邮箱B:qq邮箱用户用qq邮箱客户端发邮件给qq的SMTP服务器,然后qq的SMTP服务器会查询MX记录,找到163邮箱的SMTP服务器的信息,然后发送给它,163的SMTP收到邮件后判断该邮件是否属于该SMTP服务器的管辖范围,如果是的话就直接把邮件存储到收件人B的邮箱中。163邮箱用户就可以用客户端软件和163的POP3/IMAP建立连接通过POP3/IMAP协议查看邮件(如下图,两种颜色的箭头,分别代表双方发送邮件的过程)


邮件客户端程序和SMTP服务器发送邮件的区别:

客户端程序发送邮件给SMTP服务器需要用户信息验证,而SMTP服务器发送邮件给其他的SMTP服务器不需要用户账号信息验证

你可能感兴趣的:(邮箱开发)