1. 项目定位与用途
Numa 是基于 Rust 开发的单二进制便携 DNS 解析器,核心定位是让用户在任何网络环境下都能拥有完全自主可控的 DNS 解析能力,无需依赖云服务或自建 Raspberry Pi 等硬件设备,单二进制即可部署,配置可随身携带。它既可作为个人设备的系统级 DNS 服务使用,也可作为 ODoH 中继节点运行,扩展匿名 DNS 生态。
Numa 是基于 Rust 开发的单二进制便携 DNS 解析器,支持广告拦截、.numa 本地域名、ODoH 匿名解析与 DNSSEC 验证,可安装为系统级 DNS 服务,适用于跨网络统一 DNS、本地开发服务命名、隐私保护解析等场景,本文档涵盖其安装、使用与核心特性说明。
Numa 是用 Rust 编写的单二进制便携 DNS 解析器,支持本地域名、广告拦截、ODoH 匿名解析与 DNSSEC 验证,无需云服务或自建硬件即可实现跨网络统一可控的 DNS 服务。
Numa 是基于 Rust 开发的单二进制便携 DNS 解析器,核心定位是让用户在任何网络环境下都能拥有完全自主可控的 DNS 解析能力,无需依赖云服务或自建 Raspberry Pi 等硬件设备,单二进制即可部署,配置可随身携带。它既可作为个人设备的系统级 DNS 服务使用,也可作为 ODoH 中继节点运行,扩展匿名 DNS 生态。
Numa 解决了跨网络环境下 DNS 服务的多重痛点:一是不同网络下 DNS 服务不统一,广告、追踪无法全局拦截;二是本地开发服务访问需要修改 hosts 文件或记忆端口号,操作繁琐;三是传统 DNS 查询明文传输,隐私易泄露,且依赖单一上游 DNS 存在单点故障风险;四是自建 DNS 服务通常需要额外硬件或云服务,成本高、配置复杂。
Numa 适用于多类场景:跨公共网络(咖啡店、机场、酒店)时统一使用带广告拦截的 DNS 服务,避免网络切换导致配置失效;开发者为本地开发服务配置 .numa 域名,无需修改 hosts 即可通过 HTTPS 访问,支持 HMR 热更新;隐私敏感场景下使用 ODoH 匿名解析,避免 DNS 查询被第三方窥探;需要 DNSSEC 全链验证的场景,确保 DNS 解析结果未被篡改;自建 ODoH 中继节点,扩展匿名 DNS 生态覆盖范围。
Numa 支持多平台安装:macOS 可通过 brew install razvandimescu/tap/numa 或官方安装脚本安装;Linux 可使用官方 curl 安装脚本、Arch 系 pacman -S numa 或 cargo install numa 源码编译安装;Windows 可从 GitHub Releases 下载二进制或源码编译安装,需管理员权限;全平台支持 Docker 部署(docker run -d --network host ghcr.io/razvandimescu/numa)、Nix 直接运行(nix run github:razvandimescu/numa);安装后可执行 sudo numa install(Windows 为管理员执行 numa install)注册为系统服务。
前台运行直接执行 sudo numa(53 端口需要 root/管理员权限);访问 http://localhost:5380 或 http://numa.numa 打开本地管理仪表盘;通过向 localhost:5380/services 发送 POST 请求添加本地开发服务,传入 name 和 target_port 字段即可;执行 numa relay 命令可运行 ODoH 中继服务;系统服务卸载执行 sudo numa uninstall(Windows 需管理员权限并重启设备)。
Numa 完全从零用 Rust 实现,无任何外部 DNS 库依赖,基于 Tokio 异步运行时构建;支持 forward(透明代理系统 DNS,兼容 captive portal、VPN 场景)、recursive(从根服务器递归解析,无上游依赖)、auto(启动探测根服务器可达性,自动选择递归或 DoH 回退)三种解析模式;内置 DNSSEC 全链信任验证、Hagezi Pro 广告拦截(每日自动更新)、.numa 本地域名自动 HTTPS 签发、ODoH(RFC 9230)与 DNS-over-TLS(RFC 7858)支持,可适配多平台系统服务集成。
不需要,Numa 是单二进制便携应用,直接在本地设备运行即可,无需云账号或 Raspberry Pi 等自建硬件,配置可随身携带。
Numa 内置 Hagezi Pro 广告拦截规则,每日自动刷新,无需用户手动配置即可在任意网络环境下生效。
向本地管理接口 localhost:5380/services 发送 POST 请求,传入服务名称与目标端口即可,Numa 会自动签发有效 HTTPS 证书,无需额外配置 /etc/hosts 或反向代理。
支持 forward(透明代理系统 DNS,兼容 captive portal、VPN、企业 DNS 等场景)、recursive(从根服务器递归解析,无上游依赖)、auto(启动时探测根服务器可达性,自动选择递归或 DoH 回退)三种模式。
Windows 平台需管理员权限执行 numa install,安装后需重启设备生效;Numa 绑定 127.0.0.2:53 端口(系统 Dnscache 占用 127.0.0.1:53),配置 bind_addr 或 api_bind_addr 时需对应使用 127.0.0.2。