dnsmasq 2.93 介绍与选型指南

dnsmasq 2.93 介绍与选型指南:官方资料溯源的轻量 DNS/DHCP/RA/PXE 一体工具定位、DNS 转发缓存与 DHCP 子系统架构、2.93 安全修复与快速上手,以及与 Unbound、BIND9、CoreDNS、PowerDNS Recursor 的量化选型对比(2026-10-19 实查,未做本地安装实测)。

dnsmasqdnsmasqDNSDHCP2026/10/19

dnsmasq 2.93 介绍与选型指南

目标:基于官方公开资料(thekelleys.org.uk 官方站、官方 CHANGELOG 与 man 文档)梳理 dnsmasq 的定位、架构、功能与选型口径,并与 Unbound、BIND9、CoreDNS、PowerDNS Recursor 做量化对比。本文仅做官方资料溯源,不做本地安装与运行实测;全部版本号、日期与社区数据于 2026-10-19 联网实查。

一、信息基准

1.1 查询说明

  • 查询日期:2026-10-19。
  • 信息获取方式:纯官方资料溯源(官方站 thekelleys.org.uk/dnsmasq 的 doc.html、CHANGELOG、下载目录与 LATEST_IS_2.93 标记文件),本文不做本地安装与运行实测。
  • 版本结论:当前最新稳定版为 2.93(官方下载目录以 LATEST_IS_2.93 标记文件声明,该文件与 CHANGELOG 更新时间戳为 2026-06-04)。

1.2 版本依据

项目实查结果(2026-10-19)来源
最新稳定版2.93(LATEST_IS_2.93 标记,2026-06-04 更新)thekelleys.org.uk/dnsmasq/
2.93 主要变更CVE-2026-2291 长域名堆覆盖漏洞的整库级修复、DNSSEC 通配符/RRSIG 边界修复、FreeBSD 15 inotify 支持、2.92 的 DHCPv6 中继回归修复官方 CHANGELOG
代码仓库官方 git 自托管于 thekelleys.org.uk(git://thekelleys.org.uk/dnsmasq.git);GitHub imp/dnsmasq 为镜像官方 doc.html
开源许可GPL v2 或 v3 由使用者选择(官方原文「version 2 or version 3 at your discretion」)官方 doc.html License 一节
GitHub stars396(GitHub 镜像 imp/dnsmasq,非官方主仓库,仅作参考)GitHub 实查(2026-10-19)

1.3 官方来源清单

来源地址
官方文档页https://thekelleys.org.uk/dnsmasq/doc.html
官方 CHANGELOGhttps://thekelleys.org.uk/dnsmasq/CHANGELOG
官方下载目录https://thekelleys.org.uk/dnsmasq/
man 手册https://thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html
讨论邮件列表http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss

二、软件概述

本文介绍的是 dnsmasq 2.93(官方 LATEST_IS_2.93 标记,2026-06-04 更新)。

dnsmasq 是面向小型网络的网络基础设施一体工具(官方 doc.html 定位):单进程同时提供 DNS(转发 + 缓存 + 本地域名)、DHCP(v4/v6、BOOTP、PXE)、路由通告(RA)与内置只读 TFTP 服务器,为资源受限的路由器/防火墙设备而生,也被广泛用于手机热点 tethering 与虚拟化框架的虚拟网络。项目由 Simon Kelley 个人主导维护,以 GPL v2/v3 双许可发布,被绝大多数 Linux 发行版与 FreeBSD/OpenBSD/NetBSD 的 ports 收录(官方 doc.html 实查)。

需要说明的是,dnsmasq 无独立官网之外的文档站,官方 doc.html + man + CHANGELOG 即全部权威文档;其 GitHub 仓库为镜像,社区数据(stars 396)不反映真实使用规模——它几乎是 Linux 桌面/路由固件中装机量最大的 DNS/DHCP 组件。

三、核心架构

以下要素转述自官方 doc.html 与 man 手册(查询日期 2026-10-19)。

3.1 DNS 子系统

  • 本地 DNS 服务器:为局域网提供递归转发(所有查询类型转发给上游)与常见记录类型缓存(A、AAAA、CNAME、PTR;启用 DNSSEC 时含 DNSKEY/DS);
  • 本地域名来源:/etc/hosts、DHCP 租约自动登记、配置文件中的多种记录类型;
  • 上游选择:可按域名分流指定上游(子域指向独立上游服务器,便于 VPN 拆分解析),支持上游动态变化;
  • 权威模式:可将本地域名导出为一个全局 DNS 中的区,dnsmasq 作为该区权威服务器并支持向辅服务器做区传输(AXFR);
  • DNSSEC:对上游应答做验证,防欺骗与缓存投毒;支持国际化域名。

3.2 DHCP/RA/TFTP 子系统

  • DHCPv4/v6、BOOTP 与完整 PXE 服务器(支持网络启动菜单与多架构、与既有 DHCP 服务器共存的 proxy-mode);
  • 静态租约与动态租约并存,DHCPv6 无状态模式;
  • DHCP 分配的机器名自动进入 DNS(可按机器或按 MAC/UID 集中指定);
  • RA 子系统为 IPv6 主机提供基本自动配置(可独立运行或与 DHCPv6 配合,M/O 位与 RDNSS 选项可调);
  • 内置只读 TFTP 服务器支撑网络启动;未使用的功能可在编译期裁剪以缩减体积。

四、功能特性

4.1 一体化能力

  • 单二进制/单配置文件(/etc/dnsmasq.conf)承载 DNS + DHCP + RA + TFTP + PXE;
  • 按接口/地址绑定监听、条件转发(server=/domain/upstream)、address= 本地改写等经典指令;
  • DNSSEC 校验、按域上游分流、权威小域导出(官方 doc.html)。

4.2 2.93 系列状态

2.93 为当前稳定线(2026-06-04 口径):核心变化是将长域名存储分配整体重构以根治 CVE-2026-2291(堆覆盖)——官方说明此前发布过单点补丁,2.93 做了全代码库级修正;同时修复 DNSSEC 通配符与伪 RRSIG 导致的验证失败、2.92 引入的 DHCPv6 中继回归,并为 FreeBSD 15 启用 inotify(官方 CHANGELOG 实查)。选型时应确保使用 2.93 或发行版内已含 CVE-2026-2291 补丁的版本。

4.3 工程形态

  • 编译期特性裁剪(未用功能可去除),适配嵌入式与路由固件;
  • 发行版普遍预装并随包提供 systemd 单元,通常「装完即需改配置」而无需额外部署组件。

五、快速上手

以下示例转述自官方文档(官方地址:https://thekelleys.org.uk/dnsmasq/doc.html 与 man 手册,本文不做本地实测)。

5.1 获取与安装

官方 doc.html 明确 dnsmasq「included in most Linux distributions」,发行版安装即官方推荐路径:

# Debian/Ubuntu 系
apt install dnsmasq
# RHEL 系
dnf install dnsmasq

源码路径:从官方下载目录获取 dnsmasq-2.93.tar.xz(官方站提供 tarball、签名与 man 文档)。

5.2 最小可用配置

# /etc/dnsmasq.conf —— 转述自官方 man 手册常用指令
domain-needed        # 不转发裸主机名
bogus-priv           # 反向查询私网地址不转发上游
server=223.5.5.5     # 上游 DNS(可多条;按域分流用 server=/example.com/10.0.0.1)
address=/test.internal/192.168.1.10   # 本地域名改写
dhcp-range=192.168.1.100,192.168.1.200,12h   # DHCP 动态段

启动后 dnsmasq 即在本机 53 端口提供 DNS 缓存转发、在局域网提供 DHCP。指令级的逐项说明与生产模板,本站已实测整理为 《dnsmasq 配置参数详解》。

六、适用场景与限制

6.1 适用场景

  • 家庭/小型办公网的 DNS 缓存转发 + DHCP 一体网关;
  • OpenStack/Libvirt/Kubernetes 等虚拟化与容器平台的内嵌 DNS/DHCP 组件(官方 doc.html 提及虚拟化框架用途);
  • 路由器/防火墙固件(OpenWrt 等)的资源受限网络服务;
  • PXE 网络装机与 TFTP 引导配套。

6.2 限制与注意事项

  • 缓存无磁盘持久化、无复杂负载均衡与观测面,不适合作为大型企业递归出口;
  • 权威服务仅面向「本地小域导出」的有限场景,不是全功能权威 DNS;
  • 安全通告集中在解析边界(如 CVE-2026-2291 长域名堆覆盖),需紧跟发行版补丁节奏;
  • 个人主导的项目治理:发版节奏与响应依赖维护者,重大漏洞期偶有集中补丁发布(CHANGELOG 口径)。

七、同类选型对比

7.1 候选概览

工具定位开源许可
dnsmasq 2.93SOHO 级 DNS+DHCP+RA+PXE 一体工具GPL-2.0 或 GPL-3.0
Unbound 1.26.1验证型递归缓存解析器BSD-3-Clause
BIND 9.20全功能 DNS 套件(权威+递归)MPL-2.0
CoreDNS 1.14插件化 DNS 服务器(K8s 生态)Apache-2.0
PowerDNS Recursor 5.1可编程递归解析器GPL-2.0

7.2 量化对比(2026-10-19 实查)

维度dnsmasq 2.93Unbound 1.26.1BIND 9.20.29CoreDNS 1.14.7PowerDNS Recursor 5.1.10
开源许可GPL-2.0/3.0 双选BSD-3-ClauseMPL-2.0Apache-2.0GPL-2.0
GitHub stars396(imp/dnsmasq 镜像,主仓库自托管)4990(NLnetLabs/unbound)781(isc-projects/bind9,主仓库在 GitLab.isc.org)14385(coredns/coredns)4500(PowerDNS/pdns 共仓)
最近发版2.93(LATEST 标记 2026-06-04)1.26.1(2026-09-16)9.20.29(2026-09)v1.14.7(2026-08-19)5.1.10(2026-02-09)
版本节奏2.x 长线演进补丁型稳定线,安全响应快稳定线/ESV/开发线三轨minor 持续推进5.1 线补丁维护
DHCP/PXE内置(v4/v6/BOOTP/PXE/TFTP)无可配套(独立 dhcpd)无无
典型场景家庭/小网关、虚拟化内嵌企业递归出口、DNSSEC 验证传统企业权威+递归全套K8s 集群 DNS、插件化转发Lua 可编程递归(运营商)

(stars 与发版时间取自各项目 GitHub Releases 页、官方站点与 CHANGELOG 实查,查询日期 2026-10-19;与《Unbound 1.26 介绍与选型指南》同源口径;许可见各自仓库或官网 LICENSE 说明。)

7.3 选型建议

  • 要「一台小机器同时管 DNS、DHCP、PXE」,dnsmasq 一体化的工程价值没有对手,家庭路由器与虚拟化平台内嵌是它的主场;
  • 纯递归解析、看重 DNSSEC 验证与企业级安全响应,选 Unbound(详见 《Unbound 1.26 介绍与选型指南》);
  • 权威 + 递归全套与标准企业 DNS 能力选 BIND 9;Kubernetes/插件化转发选 CoreDNS(详见 《CoreDNS 1.14 介绍与选型指南》);
  • 需要脚本化递归策略选 PowerDNS Recursor;生产组合常见「dnsmasq 做局域网 DHCP/前端缓存 + 上游指向 Unbound 递归」,两者互补而非互替。

八、参考链接