通过 HTTP API 监控和检查 Technitium DNS服务器。仅用于只读健康检查、DNS 统计、区域、DHCP 租约、令牌/会话验证及专业功能...
Technitium DNS. 使用此技能对 Technium DNS 服务器实例进行只读检查是一项面向实际任务的技能,主要用于在运行脚本前选择这些环境变量;Technitium v15+ 接受 API/ session t。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
使用此技能对 Technitium DNS Server 实例执行只读检查。
运行脚本前,请设置以下环境变量:
export TECHNITIUM_URL="http://dns-server.example:5380" export TECHNITIUM_TOKEN="..."
Technitium v15+ 支持以下格式的 API/会话令牌:
Authorization: Bearer
建议为监控用途创建专用的、权限受限且仅具备只读权限的用户,并为其配置一个永不过期的 API token。
运行内置辅助脚本:
python3 scripts/technitium_health_check.py
或从其他工作目录运行:
TECHNITIUM_URL="http://dns-server.example:5380" TECHNITIUM_TOKEN="..." python3 /path/to/technitium-dns/scripts/technitium_health_check.py
该脚本输出 JSON 格式结果:
{
"ok": true,
"checked": [],
"failures": []
}
退出码说明:
0:无严重故障1:一个或多个被监控项检测到严重异常2:配置错误或核心 API/会话检查失败检查的均为只读接口:
/api/user/session/get — 验证 token/会话有效性及获取服务器基本信息/api/settings/get — 获取版本号、运行时间戳、DNS 设置可用性等信息/api/dashboard/stats/get?type=LastHour&utc=true — 获取最近一小时 DNS 统计数据/api/zones/list — 检查是否存在已禁用、已过期或同步失败的区域(zone)/api/dhcp/leases/list — 检查 DHCP 租约可见性(若已启用且权限允许)触发告警/失败的情形包括:
disabled、isExpired 或 syncFailedDHCP 权限不足将作为警告记录在 checked 字段中,因为许多部署并未启用 Technitium DHCP 功能,或已限制 DHCP 相关权限。
用于心跳检测与主动监控时,请遵循以下原则:
ok 值为 true,则保持静默,无需输出。ok 值为 false,仅汇总并报告可操作的失败项。Technitium DNS Server API 官方文档:
https://github.com/TechnitiumSoftware/DnsServer/blob/master/APIDOCS.md
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章