有没有办法使用 pfsense 作为缓存 DNS 服务器。它将从根服务器开始解析域,并缓存它们以供后续命中。
我尝试了 pfSense 1.2.2 上的 DNS 服务器包,我猜它默认使用 WAN DNS 服务器。
答案1
第二次更新:
pfSense 的当前版本 (2.2+) 现在基于 FreeBSD 10.X。这包括 Unbound 作为解析器。您可以将 Unbound 指向 OpenDNS 或 Google 上的解析器。
[适用于 pfSense 2.1 及更低版本]
pfsense 有一个 DNS 缓存,称为 dnsmasq。它不从根服务器启动。默认情况下,它将从 WAN DHCP 服务器获取 DNS,但您可以从网页中覆盖它。我会将框指向一个开放的 DNS 服务器,例如
Google 的地址为 8.8.8.8,Level3 的地址为 4.2.2.1、4.2.2.2 OpenDNS 的地址为 208.67.222.222、208.67.220.220
根服务器很忙,因此我不建议从它们开始。使用上面的地址,您应该可以获得更好的性能。
更新:
根据下面的评论,dnsmasq 不是缓存(不正确,dnsmasq 确实缓存响应,但不是所有类型的记录,请参阅域名系统),我想指出,pfSense 上还有另一个软件包可以进行完整的 DNS 缓存。Unbound 是一个完整的 DNS 解析器,支持 DNSSEC(签名的 DNS 请求)。如果您想要“完整而完整”的 DNS 缓存,请安装它,而不是使用 dnsmasq(默认提供)。
注意:使用 Unbound 时需要注意一件事。在系统升级期间,如果您将 pfSense 本身设置为仅使用 Unbound 作为解析器,DNS 将失败,因为软件包直到操作系统安装后才会安装(但操作系统升级需要 DNS 来获取软件包)。在这种情况下,请确保在升级期间有备用 DNS 解析器供 pfSense 使用。
答案2
pfSense 论坛主题建议安装 tinydns 的 DNS 包,然后调整缓存大小以满足您的需求。
答案3
您可以为此使用 Unbound 包。