我试图了解公共DNS名称服务器的目的(公共,因为不是SOA;如8.8.8.8)。
我执行了一个dig +trace
命令,据我所知,使用名称服务器的唯一时间是找到根域的SOA .
。之后,查询层次结构中每个域的SOA。
我的假设是公共名称服务器用于:
- 识别根域的SOA,因此不必在客户端上进行硬编码。
- 分散流程和缓存。因此,如果域的SOA发生故障,另一台服务器可以引导客户端。
- 减少SOA上的负载。如果另一个服务器知道recored,则不需要查询SOA。
我有3个问题:
我的假设是否正确?
如果这些确实是名称服务器所做的唯一事情,如果我不需要缓存并且愿意自己进行递归查询,我可以停止使用名称服务器吗?
- 如果SOA执行过多请求,是否可以拒绝回答来自特定名称服务器的查询?