在上一篇文章 07.设置路由器通告 中,已经设置了 路由器通告
,现在来调整 Unbound
服务。
Unbound
是 OPNsense 自带的 DNS 转发工具,且支持 DoT 、域名覆盖、DNS 黑名单等高级 DNS 功能。
登录 OPNsense ,打开左侧导航 服务 - Unbound DNS - 常规
页面, Unbound
服务 常规
设置如下。
高级
选项需要手动打开,点击页面底部 显示高级选项
。
参数 | 值 | 说明 |
---|---|---|
启用 | 勾选 | 启用 Unbound 服务 |
侦听端口 | 53 |
使用 53 端口对外提供服务 |
网络接口 | 全部(推荐) |
监听的网络接口 |
不注册系统A/AAAA记录 | 勾选 | 无需在 Unbound 中注册本机 IPv4 / IPv6 地址 |
重载刷新DNS缓存 | 勾选 | 在 Unbound 重新加载时刷新 DNS 缓存 |
本地区域类型 | 静态 |
如果本地数据中有匹配项,则响应查询 否则,返回 nodata 或 nxdomain 对于否定回答,如果该区域顶级域的本地数据存在,响应将包含其 SOA 记录 |
出站网络接口 | 全部(推荐) |
设置向上游 DNS 发送请求时使用的网络接口 |
额外说明:
-
如果上游 DNS 服务器支持
DNSSEC
协议,可勾选DNSSEC
选项。 -
本地区域类型
默认参数为透明
,关于该参数的更多介绍,请查阅:Unbound.conf(5) 。
按需修改完成后,点击页面底部 保存
并点击 应用更改
。
打开左侧导航 服务 - Unbound DNS - 高级
页面, Unbound
服务 高级
设置如下。
配置分组 | 参数 | 值 | 说明 |
---|---|---|---|
常规设置 | 隐藏身份 | 勾选 | 启用时,id.server 和 hostname.bind 查询会被拒绝 |
隐藏版本 | 勾选 | 启用时,version.server 和 version.bind 查询会被拒绝 |
|
严格QNAME最小化 | 勾选 | 向上游服务器发送最少的信息以增强隐私 | |
私有域 | fox.internal |
标记私有域名,在被查询时允许返回私有网段地址 | |
服务过期设置 | 服务过期响应 | 勾选 | 从缓存中提供过期记录的响应 |
过期记录回复TTL值 | 30 |
向客户端响应过期记录时使用的 TTL 值,建议为 30 秒 |
|
过期响应的TTL | 129600 |
过期记录在缓存中的最大 TTL 值,建议为 86400 秒至 259200 秒 |
|
重置过期记录TTL | 不勾选 | 更新缓存失败时,将缓存中过期记录的 TTL 值重置为 过期响应的TTL |
|
客户端响应超时 | 1800 |
在客户端查询超时前,主动重新发起上游查询的时间,单位为毫秒 | |
记录设置 | 扩展统计 | 勾选 | 在 Unbound 服务日志中输出扩展信息 |
标记查询和回复 | 勾选 | 在 Unbound 服务日志中标记 DNS 查询、回复 |
|
记录服务失败 | 勾选 | 在 Unbound 服务日志中记录返回 SERVFAIL 的原因 |
|
缓存设置 | 预取支持 | 勾选 | 在域名缓存过期之前尝试刷新缓存,对经常访问的域名较为友好 |
额外说明:
-
如果上游 DNS 服务器支持
DNSSEC
协议,可勾选预取DNS密钥支持
和强化DNSSEC数据
选项。 -
在
私有域
输入框中填写域名时,按下键盘回车键
即可完成一次输入。 -
可在
私有域
输入框中填写多个域名,系统会自动识别。
按需修改完成后,点击页面底部 保存
。
Unbound
的 黑名单
功能类似于 Adguard Home ,但黑名单文件使用的格式为 域名列表
。
打开左侧导航 服务 - Unbound DNS - 黑名单
页面,并打开页面左上角的 高级模式
。
设置 黑名单
时,会用到第三方的黑名单列表,具体参数设置如下。
参数 | 值 | 说明 |
---|---|---|
启用 | 勾选 | 启用 Unbound 的黑名单功能 |
DNSBL 类型 | 没有选择 |
无需选择系统提供的黑名单列表 |
黑名单网址 | (参见额外说明) | 填入第三方黑名单列表 |
返回NXDOMAIN | 勾选 | 向客户端返回 NXDOMAIN 而不是 0.0.0.0 |
额外说明:
-
DNSBL类型
中提供了大量官方筛选出来的优秀黑名单,但其链接地址多在海外,容易下载失败。 -
DNSBL类型
与黑名单网址
中的黑名单列表可同时使用。 -
在有多个黑名单来源时,
Unbound
会在一定程度上聚合黑名单中的列表地址。 -
黑名单中地址列表越多,越消耗主机的 CPU 、内存资源,同时会影响域名解析速度。
-
在
黑名单网址
输入框中填写链接地址时,按下键盘回车键
即可完成一次输入。 -
可在
黑名单网址
输入框中填写多个链接地址,系统会自动识别。
当前常用的几个黑名单列表如下。
## 列表名称
Anti-AD - 用于拦截广告域名
## 黑名单链接
https://anti-ad.net/domains.txt
## 列表名称
Neodevhost - 用于拦截广告域名
## 黑名单链接
https://neodev.team/lite_host
## 列表名称
Malware Filter - 用于拦截病毒域名
## 黑名单链接
https://malware-filter.gitlab.io/malware-filter/urlhaus-filter-hosts.txt
按需修改完成后,点击页面底部 应用
。
打开左侧导航 服务 - Unbound DNS - 查询转发
页面。
Unbound DNS 的 查询转发
用于设置 Unbound
的上游 DNS 服务器。
需要注意的是 使用系统DNS服务器
选项,若启用该选项,则产生以下效果:
-
在
系统 - 设置 - 常规
中设置的 DNS 服务器,将用于查询转发 -
将忽略
查询转发
中设置的查询转发规则,除非该规则包含域名
参数 -
所有 DoT (DNS over TLS) 服务器,将不再用于处理系统收到的 DNS 查询
因此,如非特殊需求或不使用 DoT , 不推荐 启用 使用系统DNS服务器
选项。
设置 查询转发
时,先设置私有域名查询转发规则,点击列表右侧 +
按钮,规则设置如下。
参数 | 值 | 说明 |
---|---|---|
启用 | 勾选 | 启用本条查询转发规则 |
域 | fox.internal |
设置为本地私有域名 |
服务器 IP | 172.16.1.1 |
设置为 LAN 接口 IPv4 地址 |
服务器端口 | 53 |
设置为 Unbound 的 侦听端口 |
按需修改完成后,点击对话框右下角 保存
并点击页面底部 应用
。
继续设置普通查询转发规则,同样点击列表右侧 +
按钮,规则设置如下。
参数 | 值 | 说明 |
---|---|---|
启用 | 勾选 | 启用本条查询转发规则 |
域 | 无需填写域名参数 | |
服务器 IP | (参见额外说明) | 设置为知名公用 DNS 服务器 |
服务器端口 | 53 |
DNS 标准端口 |
额外说明:
-
服务器IP
支持 IPv4 / IPv6 地址。 -
请选择知名公共 DNS 服务器。
-
如无特殊需求,请使用国内公共 DNS 服务器,以降低延迟。
-
建议不要在此处设置 DoT 服务器。
当前常用的公共 DNS 服务器列表如下。
## 阿里云 DNS
223.5.5.5
223.6.6.6
2400:3200::1
2400:3200:baba::1
## 火山引擎 DNS
180.184.1.1
180.184.2.2
## OneDNS 拦截版
52.80.66.66
2400:7fc0:849e:200::4
## OneDNS 纯净版
117.50.10.10
2400:7fc0:849e:200::8
## DNSPod DNS
119.29.29.29
2402:4e00::
## 114 DNS
114.114.114.114
114.114.115.115
按需修改完成后,点击对话框右下角 保存
并点击页面底部 应用
。
可按需添加多个公共 DNS 服务器,添加完成后如图所示。
打开左侧导航 服务 - Unbound DNS - DoT
页面。
DoT 即 DNS over TLS,用于设置 Unbound
的上游 DoT 服务器。
Unbound
设置 DoT 服务器后,会优先使用 DoT 服务器,遇到异常才会回退到 查询转发
中的 DNS 服务器。
点击列表右侧 +
按钮, DoT 服务器设置如下。
参数 | 值 | 说明 |
---|---|---|
启用 | 勾选 | 启用本条 DoT 服务器 |
域 | 无需填写域名参数 | |
服务器 IP | (参见额外说明) | 设置为知名公用 DoT 服务器 |
服务器端口 | 853 |
DoT 标准端口 |
验证 CN | (参见额外说明) | DoT 域名地址验证 |
额外说明:
-
服务器IP
支持 IPv4 / IPv6 地址。 -
请选择知名公共 DoT 服务器。
-
如无特殊需求,请使用国内公共 DoT 服务器,以降低延迟。
-
公共 DoT 服务器可能没有 IPv6 地址,但不影响 IPv6 地址解析。
当前常用的公共 DoT 服务器列表如下。
## 阿里云 DNS
域名 (CN) - dns.alidns.com
223.5.5.5
223.6.6.6
## DNSPod DNS
域名 (CN) - dot.pub
1.12.12.12
120.53.53.53
按需修改完成后,点击对话框右下角 保存
并点击页面底部 应用
。
可按需添加多个公共 DoT 服务器,添加完成后如图所示。
打开左侧导航 报告 - 设置
页面。
在 Unbound DNS报告
中勾选 启用本地统计信息收集
功能并点击选项下方 保存
。
即可在左侧导航 报告 - Unbound DNS
页面中查看内网设备提交给 Unbound
的 DNS 查询记录。
至此,OPNsense Unbound
设置骤完成。