← [ BACK_TO_NOTES ]

DNS Forwarder

DNS Forwarder 不一定自己访问根服务器,而是把查询继续转交给更上游的递归解析器;家庭路由器和企业内网常扮演这一角色。

#concept #growing #network #dns

[!info] related notes

DNS Forwarder

一句话定义

DNS Forwarder(转发器) 是一种 DNS 服务器,它不(一定)自己从根开始递归,而是把收到的查询继续转交给上游的某个递归解析器。

核心机制 / 工作原理

转发链可以很长:

电脑 Stub Resolver
  ↓
家庭路由器 (Forwarder)
  ↓
ISP DNS (Forwarder / 递归)
  ↓
更上层递归解析器

所以你在 Windows 里看到的 DNS 服务器 192.168.x.x 通常只是 Forwarder;真正完成递归查询的可能是运营商服务器。

为什么需要 Forwarder

  • 集中策略:企业内网统一走某个 DNS 做过滤/审计。
  • 减少外联:内网缓存 + 统一出口。
  • 访问控制:只让 Forwarder 出网,终端不能直接访问外网 53。
  • 分流:特定域名发给特定上游(类似 Mihomo 的 nameserver-policy,见 mihomo-dns-redir-host-vs-fake-ip)。

最小例子 / 最小场景

/etc/resolv.conf 里写 nameserver 10.0.x.x,而 10.0.x.x 是一台把一切查询 forward 到 8.8.8.8 的 dnsmasq。终端以为 10.0.x.x 是解析器,实际递归发生在 8.8.8.8。

边界与易混淆点

  • Forwarder ≠ 递归解析器:Forwarder 可以完全不碰根服务器;若上游也只转发,则最终必有一个节点真正递归。
  • 排障时「我配的 DNS 是 X」常是误导——X 可能只是转发起点,真正的解析路径要看最末端的递归者。
  • 透明重定向:某些网络会把所有 UDP 53 流量重定向到自己的 Forwarder,导致 nslookup example.com 8.8.8.8 并不真的到达 8.8.8.8(见 dns-filtering-hijacking-pollution)。
  • Forwarder 自己也可能有缓存,是缓存链中的一层(见 dns-caching-hierarchy)。
创建于 2026/7/31 更新于 2026/7/31
Digital Biome
Access

键盘导航

j / k / ↑ / ↓
选择对象
Enter / o
打开选择
/ 或 Ctrl+K
全站搜索
i / f / 1–4
筛选当前列表
g → h / l / p / t / a
首页 / 笔记 / 项目 / 工具 / About
r → 1–9
打开所选对象的关联
u
返回上一页
Esc
关闭浮层 / 取消命令;输入框内清空文本