说明
该插件将尝试解析 CNAME,并仅返回生成的 A 或 AAAA 地址。如果无法解析到 A 或 AAAA 记录,则会向客户端返回原始(第一个)应答。
将检测存在循环依赖,并记录错误。在该情况下,也会将原始(第一个)应答返回到客户端。
语法
finalize [max_depth MAX]
-
max_depth
MAX 限制对 CNAME 链进行调用的最大次数以解析最终的 A 或 AAAA 记录,可以指定值> 0
。如果达到最大深度,并且无法找到 A 或 AAAA 记录,则将包含 CNAME 的原始(第一个)应答返回到客户端。
指标
如果已启用监控(通过 prometheus 指令),则会导出以下指标
-
coredns_finalize_request_count_total{server}
- 对 finalize 插件的查询次数。 -
coredns_finalize_circular_reference_count_total{server}
- 检测到的循环引用的次数。 -
coredns_finalize_dangling_cname_count_total{server}
- 无法解析的 CNAME 次数。 -
coredns_finalize_maxdepth_reached_count_total{server}
- 在尝试解析 CNAME 时达到最大深度时的事件次数。 -
coredns_finalize_maxdepth_upstream_error_count_total{server}
- 收到的上游错误次数。 -
coredns_finalize_request_duration_seconds{server}
- 解析 CNAME 的持续时间。
server
标签指示处理请求的服务器。
就绪
该插件会向就绪插件报告就绪状态。它会立即就绪。
示例
在此配置中,我们将所有查询转发至 9.9.9.9 并解析 CNAME。
. {
forward . 9.9.9.9
finalize
}
在此配置中,我们将所有查询转发至 9.9.9.9 并解析具有最大搜索深度 1
的 CNAME
. {
forward . 9.9.9.9
finalize max_depth 1
}