Table of Contents
什么是递归DNS服务器?
递归 DNS 服务器是用户试图访问网站的第一个联系点。 当你输入浏览器的 URL 时, 您的设备会向递归 DNS 服务器发送请求。 此服务器将承担查找与该域相关的 IP 地址的任务 。
递归服务器代表您执行整个解析进程。 它首先查询根名服务器, 源名服务器将它直接用于适当的顶级域名服务器( 如.com、.org 或.net ) 。 TLD 服务器然后指向相关域的权威名称服务器。 只有在收到权威服务器的最终答案后, 递归服务器才会将 IP 地址返回您的浏览器 。
递归服务器至关重要,因为它们 cache DNS 响应。缓存会大大加快后续对同一域的请求,减少延迟,并卸载权威服务器的流量。然而,缓存不是永久的;每个记录都有域主设定的时间到寿命(TTL)值。一旦TTL过期,递归服务器必须在下一个查询中获取一份新鲜副本。
递归解析如何工作
描述的过程实际上叫做 enterial resolution ——递归服务器迭代查询其他服务器而不需要它们做进一步的查询. "递归服务器"一词是指递归服务器代表客户端处理整个链条的事实. 还有一些DNS解析器使用的"完全递归"模式可能涉及附加步骤,比如在获得最终答案之前进行转录.
- 步骤1:客户端向递归解器发送查询(如8.8.8.8).
- 步骤2: 递归解器检查它的缓存。如果找到 TTL 并有效, 立即回答返回 。
- 步骤3: 如果未缓存,解析器查询根服务器(例如,为.com域).
- Step 4: 根服务器响应地址为.com TLD服务器.
- 步骤5: 解答者查询TLD服务器,它与域名的权威服务器进行回复.
- 步骤6: 解析器查询权威服务器,它返回IP地址.
- 步骤7: 解答者缓存记录,并将答案发回客户端.
整个过程通常以毫秒的速度发生。 递归式解答器的效率是互联网瞬间感觉(即使每天处理数十亿次查询)的主要原因。
什么是权威 DNS 服务器 ?
权威DNS服务器持有域名的确定记录,它们包含实际的DNS记录,如A记录(将域名映射到IP地址),MX记录(邮件服务器)等. 这些服务器负责提供一个域的准确信息.
当一个递归服务器无法在其缓存中找到所需的信息时,它会查询域名的权威服务器. 权威服务器随后会响应正确的DNS记录,这些记录会由递归服务器为未来请求缓存.
权威服务器有两种主要类型:主 和次(奴隶)服务器。主服务器持有原始的,可编辑的区域文件。DNS记录的更改——如添加一个新的子域或更新IP地址——是在主服务器上进行的。二级服务器通过区域传输(AXFR/IXFR)获取区域数据的副本。这种冗余可确保高可用性:如果一个权威服务器失败,另一个服务器仍然可以回答域域的查询。
为什么授权服务器重要
权威服务器是域内真理的最终来源。没有这些服务器,互联网将无法可靠地将人读姓名映射到网络地址。 DNS的复原力取决于权威服务器的高度可用性、安全性和响应性。 域主通常配置多个权威服务器(通常在不同地理区域),以防范断电和DDoS攻击。
现代权威服务器也支持DNSSEC(DNS Security Special Extensions),它将密码签名添加到DNS记录中,这阻止了攻击者伪造DNS响应,并引导用户到恶意网站. DNSSEC启用后,验证签名的递归解析器可以检测篡改.
递归式和权威 DNS 服务器之间的密钥差异
- 功能: 递归服务器解决用户查询,而权威服务器则存储原始DNS记录.
- 定位:[ 递归服务器一般由ISP或第三方供应商操作;权威服务器由域名拥有者或DNS托管供应商管理.
- 数据存储: 递归服务器缓存 DNS 响应;权威服务器维护源记录.
- 在DNS分辨率中的作用:递归服务器执行查询过程;权威服务器提供最后答案.
虽然以上内容涵盖了基本内容,但建筑和运作差异却更深。 例如,递归服务器往往是大量、多租借的系统,必须处理数百万域的查询。而权威服务器则往往专门处理一组特定区域,必须保证这些区域的数据完整性和低延迟。递归服务器还面临独特的安全威胁],例如DNS放大攻击,这些攻击利用开放的解析器来淹没流量目标。为了缓解这种情况,许多递归服务器都实施了限制速率、访问控制清单和响应大小限制。
现实世界实例
大多数互联网用户在不知情的情况下与递归服务器互动。例如,Google公共DNS(8.8.8),Cloudflare(1.11.1.1)和OpenDNS都是流行的公共递归解码器。 与此同时,域主为网站配置权威服务器。 例如,使用Cloudflare的CDN的网站将把Cloudflare的命名服务器(如 kay.ns.cloudflare.com)列为该域的权威服务器。 当解析器查询这些权威服务器时,它们会返回Cloudflare的边缘IP地址。
企业往往会自行运行循环解决方案,控制缓存政策,执行安全政策(如封锁已知的恶意领域),并减少对外部供应商的依赖。 这在企业网络和教育机构中很常见。
安全考虑
两种服务器类型都有不同的安全关切. Recurive服务器都容易受到缓存中毒(攻击者将假记录插入缓存)和DDoS攻击. 现代解析者使用源端端随机化,DNSSEC验证,并查询随机化来减轻这些风险. 权威服务器是区域中毒(获取权限来修改区域文件)和DDoS攻击的目标,其目的是让域无法进入. 操作者用防火墙,任意播报路径,以及定期审核区域数据来保护它们.
也有必要注意DNS-over-HTTPS(DoH)和DNS-over-TLS(DoT)的崛起. 这些协议加密客户端和递归解析器之间的DNS查询,防止窃听和篡改,然而,它们并没有改变递归和权威服务器之间的根本区别——加密适用于客户端到递归腿,而递归到权威腿可能仍然无法加密,除非权威服务器也支持DOT或DoH.
业绩和可靠性
性能在很大程度上取决于服务器的两种类型。 对于终端用户来说, 递归解析器的速度至关重要; 缓慢解析器可以在页面负载中添加数百毫秒。 内容传输网络( CDN) 依赖权威服务器返回地理上接近用户的IP地址( 一个叫做 [[FLT: 0]] GeodNS [[[FLT: 1]] 的技术) 。 这需要权威服务器考虑解析器的IP地址(而不是客户端的IP地址, 解析器可以掩盖它) 。 权威服务器然后返回一个离请求解析器最近的 CDN 边缘节点 。
递归服务器还使用预设和主动缓存来提高性能。一些解析器在用户请求前获取流行域的记录来预测未来的请求。这可以减少延迟,但消耗更多资源。
结论
了解递归式和权威DNS服务器之间的区别有助于澄清域名解析如何运作. 递归式服务器充当中介,从权威服务器获取数据,这些服务器拥有确定的DNS记录,两者对于互联网导航和访问的顺利运行都至关重要.
无论是开发者、系统管理员还是好奇的用户,抓住这些角色都有助于解决连接问题,选择正确的DNS供应商,并欣赏复杂的基础设施,使互联网可靠。 进一步阅读,请参见[ 原始DNS规格[ 或[ICAN的DNS初学者指南。