“A”希望使用 DNS 服务器 1 或 2(如 NIC 上的 IPv4 设置中所述)解析 google.com。但 DNS 服务器 3 位于“A”和任一 DNS 服务器之间。服务器 3 会尝试响应 DNS 查询吗?还是会忽略该查询,直到它到达其预期的目标 DNS 服务器?
答案1
每台计算机都有一个要联系的递归 DNS 服务器列表。
当它需要解析一个名称时,它会联系其中一个服务器(通常是列表中的第一个服务器,只有当第一个服务器根本没有回复时才会切换到第二个服务器)。
当然,就像网络上以明文传输的任何内容一样,路径上的任何元素都可以拦截查询或答复,并重写它。
这种事情确实会发生,这被称为“欺骗 DNS”。例如,某些 ISP 可能会试图重写 NXDOMAIN 回复(当查询的资源不存在时),以将您指向通用搜索引擎页面或类似的东西。
如果在一般情况下发生这种情况,客户端可能会或可能不会轻易发现这一点。只有当查询的资源使用 DNSSEC 时,客户端才能验证答案在传输过程中未被修改。或者,为了获得更高的安全性,它需要使用 DNS over TLS 或 DNS over HTTPS,只要它检查远程证书即可。查看dnssec-trigger
基于 的软件unbound
。