Linux实现DNS服务

1、总结DNS解析过程

  1. 先查看浏览器缓存中是否有网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。
  2. 如果没有,操作系统会先检查自己本地的hosts文件再检查本地DNS解析器缓存是否有网址映射关系,如果有调用,完成域名解析。
  3. 如果也没有,就会找本地DNS服务器。如果查询的域名包含在本地配置区域资源中,返回解析结果给客户机,完成域名解析,此解析具有权威性。如果查询的域名不由本地DNS服务器区域解析,但该服务器已经缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,但此解析不具有权威性。
  4. 如果还是解析失败,则会根据本地DNS服务器的设置(是否设置转发器)进行查询。(1)未使用转发模式,本地DNS服务器就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名是哪一个顶级域名服务器授权管理的,并将这个顶级服务器的IP返回给本地DNS服务器。本地DNS服务器收到IP信息后,就会找到这个顶级域名服务器,这台顶级域名服务器如果自己无法解析,就会找到一个管理二级域名服务器IP给本地DNS服务器。本地DNS服务器就会根据这个地址找到二级域名服务器,重复下来,直到找到这个域名对应的主机IP地址。(2)如果使用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器,由上一级DNS服务器进行解析,上一级服务器如果不能解析,继续找上上级或者根服务器,以此循环。最终把结果返回给本地DNS服务器,由此服务器返回给客户端。

从客户端到本地DNS服务器是属于递归查询(用的是UDP),DNS服务器之间就是迭代查询(用的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值