
一起动脑筋 · 先看一个小故事
把 DNS 查询当成一次找书游戏:女孩问服务台,服务台沿目录找到负责那本书的柜子。
把过程摊开来看
- 递归解析器接下查询任务
- 根与顶级域指引指出下一站
- 权威服务器提供负责的记录
- 返回并缓存供访问使用
没有可用缓存时,解析器可依据层级指引寻找权威回答。
根服务提供顶级域方向,顶级域服务再指向相应权威服务器,负责该域的服务器返回相关记录。实际查询可能遇到别名等额外步骤。
有缓存时会跳过部分环节,不必机械走完图中每站。
轮到你来试一试
权威服务器返回“这个名字不存在”,是不是应该随便找一个相似名字的 IP 顶替?
想好了吗?点开看解释
不应该。不存在也是有意义的结果,程序应按规则处理,而不是猜一个地址。
带走一个发现
没有可用缓存时,解析器可依据层级指引寻找权威回答。
试着遮住上面的图,把每一步讲给家人听。如果某一步说不清楚,就回到那张卡片再看一遍。