你在谷歌找到的资源非常非常技术性,很难对整个系统有一个正确的感觉,或者因此愚蠢而不是很有用.任何人都有一个很好的资源来解释它作为一个整体,但没有必要成为阅读过程中的专家?
解决方法
不同类型的DNS服务器:
权威服务器
这是包含有关域名的权威(权威)信息的服务器.来自这种服务器的权威答案设置了AA位.
权威服务器的答案始终包含区域文件中实际配置的TTL.即,如果TTL设置为86400s,那就是响应中的值.
ISP运行权威服务器来托管他们代表客户管理的域.由TLD和ccTLD运行的名称服务器也是权威服务器,根名称服务器也是如此.
递归服务器
递归解析器仅接收来自存根解析器的请求.如果答案在其缓存中,它将立即返回.如果答案不在缓存中,它将迭代地向相关权威服务器询问答案,然后将其返回到存根解析器.
缓存是递归服务器的基本功能.从权威服务器接收的TTL继续滴答,当它达到零时,从缓存中清除该条目.
类似地,从递归服务器接收的答案显示减少的值,而不是来自区域的原始值.根据上面的例子,如果一小时前收到的TTL为7200s的记录,递归服务器的答案就是3600s.
虽然大多数消费者实际上依赖家庭网关中的DNS proxy,然后将查询转发给ISP解析器,但互联网服务提供商会为您的PC通话运行递归解析器.
Stub Resolver
存根解析器不是通常意义上的服务器,它通常是一个库,并且调用gethostbyname()和相关函数只调用该库中的代码.
除了与递归解析器交谈之外,存根不能做任何事情,依赖于递归解析器来获取它的所有答案.所有这些上游请求都设置了RD(递归期望)位.
一些(但绝不是全部)存根解析器具有缓存.
转发服务器
转发(或代理)服务器(通常)不缓存.它们用于在一个网络和另一个网络之间代理数据包,通常位于存根解析器和递归解析器之间.