DNS概念介绍(专家可跳过本节)
DNS(Domain Name Server) 中文名:域名解析服务器,简单的说从我们在电脑或者手机或者任何一个智能终端浏览器内输入一个网站的网址(域名,输入的网址就是域名),而这个网址会被翻译成一个能够在互联网上找到相应的服务器的IP地址后才可以在你的电脑与服务器之间进行通信,而这个翻译的角色就是DNS服务器。
DNS相关术语
- 根域服务器:全球目前有13组顶级域名解析服务器,分布在全球的主要大城市中,中国境内一个也没有。在IPV6的全球布局下,中国有一个IPV6的根域服务器,具体可查看 百度百科:根域名服务器
- 解析端口:指出的端口为IP通信的TCP或者UDP的端口,DNS使用TCP和UDP的“53”号端口进行解析,一般使用UDP进行解析。
- 区域传送
主DNS与从DNS服务器之间需要同步解析记录,从DNS服务器需要去主DNS服务器上去同步解析记录,以便从服务器也可以进行全库解析,这个同步解析记录的过程叫区域传送。区域传送有几个关键值,如下所示:- 序列号:如果判断从服务器与主服务器是否是同步的,如何判断主服务器是否有更新的记录,序列号就是一种手段,主服务器更新记录后序列号递增,从服务器查看自己的序列号与主服务器不一致,则向主服务器发送更新请求。
- 全量传送:整个解析库传送给从服务器。
- 增量传送:只传递解析库中的增量的内容
- 同步的时间间隔:多长时间向主服务器发送一次更新请求。
- 刷新时间
从服务器从主服务器请求同步解析库的时间间隔 - 重试时间
如果同步失败,隔多长时间再重新同步一次的时间间隔 - 过期时间
如果无法同步主服务器的记录,多长时间就放弃 - 通知时间
主服务器一旦有更新,就主动通知从服务器来进行更新。
- 刷新时间
- 序列号:如果判断从服务器与主服务器是否是同步的,如何判断主服务器是否有更新的记录,序列号就是一种手段,主服务器更新记录后序列号递增,从服务器查看自己的序列号与主服务器不一致,则向主服务器发送更新请求。
DNS的查询方式
- 递归查询:
所谓递规查询就是你只管把你的问题抛给你的DNS服务器,其它事情不用你管,就等着你的DNS服务器给你回应即可,如果你的DNS服务器不知道,他会向他的上级查询,如果上次还不知道,就再向上级查询,直到根域。这种方式就是递归查询。只管扔问题,别的不管类型。 - 迭代查询:
所谓迭代查询就是,你扔出来的问题,如果你的DNS服务器不知道,他就不会告诉你答案,但是他会告诉你谁应该知道这个答案,叫你再去找这台应该知道的服务器接着查,于是你再次请求第一次得到的答案的DNS服务器。就这样一级一级的你自己去问,直到问到根域服务器还没有答案的话就解析就解析失败。
DNS的结果类型
- 肯定答复:已经查询到结果返回给用户
- 否定答复:未查询到用户请求的解析结果
- 权威答复:由相应的DNS域的解析服务器答复的
- 非权威答复:由DNS缓存答复的,并不是由查询的域的域的解析服务器答复的
DNS解析类型
- SOA(Start of Authority) 起始授权机构,在Linux服务器中必需是第一条,一个区域解析库,表明哪个IP是这个域名解析的所有者,可以对解析记录进行增删查改等操作。
- A记录:从域名解析成IP地址的记录
- AAAA记录:IPV6的域名至IPV6的地址解析记录
- PTR:由IP地址反向解析域名的记录
- NS:name server,指明某个域名应该由哪个域名解析服务器进行解析,指定将相应的域名解析成IP地址的权威服务器的,值通常是另外一个DNS服务器的域名
- CNAME:别名记录,给一个域名起一个别名,意思是这个域名与别名都指向同一个IP地址,通常用于不同运营商的链路负载均衡和CND加速时指向CND运营商。
- MX:mail exchange 记录,邮件交换器,专用于邮件器,用于标明该域内谁是邮件服务器的。
- SRV记录:用于指明域内某个服务器可以提供某个服务。
DNS的服务器类型
- 主DNS服务器
维护所负载解析域内解析库,增删查改等操作,由管理员进行操作 - 从DNS服务器
从主服务器或者其它的从DNS服务器那里复制(区域传送)一份解析库 - 缓存DNS服务器
将解析的结果缓存下来便于下次直接返回结果。 - 转发器
将指定域名的解析请求直接转发至某台服务器上,避免客户端多次无效查询