BIND 9 AIops

io.github.AIops-tools由 GitHub 账号 AIops-tools 发布v0.2.0更新于 Nov 5, 2026

Governed BIND 9 DNS operations — 23 MCP tools with audit.

概览

AI 生成的概览

受治理的 BIND 9 DNS 运维服务器,提供 23 个带审计的工具,通过 rndc、named-checkconf 和 dig 操作已配置的 DNS 目标。

可以做什么
  • 查看 named 服务与区域状态、配置与已加载区域校验、DNSSEC 模式、签名、托管密钥与 serve-stale 状态
  • 检查递归 fetch-limit 命中、信任锚、DNS TCP 超时与各区域签名进度
  • 执行 DNS 查询并返回真实响应码,也可针对选定的辅助服务器查询
  • 比较主从 SOA 序列号,并运行保留单项探测失败信息的区域诊断
  • 执行受保护的辅助区域重传与单区域 NOTIFY 重发,以及带演练和确认的重载、刷新与缓存清除
适用场景
适合让助手协助运维和排查已有的 BIND 9 部署:检查区域健康、DNSSEC 与签名状态,比较主从 SOA 序列号,或在有审计记录的前提下执行受保护的重载与传输命令。
运行要求
以 Python 包形式在运维主机本地运行,需要 Python 3.11+ 与 uv,且主机已安装 BIND 9 命令行工具。需要配置文件指定目标、rndc 密钥文件与 named 配置路径以及 DNS 服务器;运行账户须能读取这些文件。
安装前请注意
部分工具会改变状态:reload-zone、refresh-zone、flush-name、retransfer-zone 和 notify-zone 有演练与确认保护,但缓存清除、重传、NOTIFY 投递或外部修改的区域文件无法安全撤销。rndc 命令被接受并不代表完成,可能返回 outcomeUnknown。区域文件编辑、DNSSEC 密钥变更与全局服务重启不在本版本范围内。

安装

在 SourceWeft 中

  1. 打开 控制台中的 BIND 9 AIops,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

BIND 9 AIops

Governed BIND 9 DNS operations with 23 MCP tools and corresponding CLI commands. It executes rndc, named-checkconf and dig as fixed argument lists without a shell. Every call is audited and budgeted by the bundled governance harness.

What it checks

  • Named service and zone status from rndc.
  • Configuration and loaded-zone validation with named-checkconf -z.
  • DNSSEC validation mode.
  • Zone DNSSEC signing, managed-key and serve-stale status; running zone configuration where enabled.
  • Recursive fetch-limit hits, DNSSEC trust anchors, DNS TCP timeouts and per-zone signing progress.
  • DNS queries with their actual DNS response code.
  • Queries against a selected secondary server.
  • Guarded secondary retransfer and single-zone NOTIFY resend.
  • Primary and secondary SOA serial comparison. A failed or unparseable query returns null, never a fabricated zero or match.
  • bind_diagnose_zone keeps individual probe failures visible.

Setup from source

Requires Python 3.11+, uv, and BIND 9 command utilities on the operator host. Run uv sync --dev, uv run bind9-aiops init, then uv run bind9-aiops doctor. A manual ~/.bind9-aiops/config.yaml can specify paths and a DNS server:

yaml
targets:  - name: local    server: 127.0.0.1    dns_port: 53    rndc_config: /etc/bind/rndc.conf    named_config: /etc/bind/named.conf    timeout: 10

Use uv run bind9-aiops diagnose example.org or uv run bind9-aiops compare-soa example.org 192.0.2.2. The MCP entry point is uv run bind9-aiops-mcp. The process account needs access to its rndc key file and BIND config, but no elevated shell is given to the agent.

Scope and verification

reload-zone, refresh-zone, flush-name, retransfer-zone and notify-zone support dry-run and two CLI confirmations. RNDC command acceptance does not prove a queued zone reload or transfer completed, so these writes report outcomeUnknown; a lost command response does too. No safe undo exists for a cache flush, retransfer, NOTIFY delivery or externally edited zone file. Zone-file editing, DNSSEC key changes and global service restarts remain outside this release. See verification. Missing features and live-environment feedback are welcome as issues or PRs.

来源:README.md,提交 54294c2

工具

0
SourceWeft 曾在隔离沙箱中以无凭据方式启动该软件包一次,以列出其工具,但未能完成:服务器未能启动。

版本历史

1
  1. v0.2.0最新Nov 5, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分