Skip to content

DNS 服务 ​

MSM 的 DNS 服务由 MosDNS 提供,负责域名分流、广告拦截、客户端访问控制、缓存和查询审计。侧边栏展开 DNS服务 后,可以从概述一路定位到具体请求,不需要先编辑原始配置。

截图环境

本页截图来自 MSM 1.2.6 与 MosDNS 5.4.3 的隔离测试环境。查询数量、延迟、客户端地址和规则数量只用于说明页面结构,不是推荐配置值。

使用前检查 ​

  1. 进入 系统设置 → 系统更新,确认 DNS 组件已经安装并显示版本。
  2. 进入 进程管理,确认 mosdns 为 RUNNING / 运行中。
  3. 让路由器 DHCP 或测试设备把 DNS 指向 MSM 主机的 MosDNS 监听地址。
  4. 发起一次真实查询,再到 DNS服务 → DNS 日志 确认请求已经进入。

如果页面提示 MosDNS 未安装,应从 系统设置 → 系统更新 → 组件更新 → DNS 安装或更新组件。DNS服务 → 配置管理 是 Pro 原始配置入口,不是标准版组件安装页。

子菜单速查 ​

子菜单主要用途推荐使用时机
概述查询趋势、分流、上游、排行与缓存统计每日巡检、变更后确认总体状态
规则管理个性化名单、广告拦截、在线分流与自动判定调整某个域名的解析策略
客户端设置全部客户端、白名单、黑名单和局域网扫描限制哪些设备使用代理分流
DNS 日志搜索请求、查看响应、命中规则和耗时排查“这个域名为什么这样解析”
系统功能上游 DNS、核心模式、过滤与缓存策略调整全局解析行为
配置管理查看或编辑 MosDNS 完整配置Pro;结构化页面无法覆盖的高级场景

概述:先判断服务是否正常 ​

DNS 概述:真实查询趋势、分流统计与上游 DNS 统计

图中从上到下依次是:

  • 查询趋势:有效请求数和平均处理耗时,可切换 1 小时、24 小时、3 天和 7 天。
  • 分流统计:白名单、灰名单、国外分流和未命中等最终分类。
  • 上游 DNS 统计:每个 UDP、TCP、DoT、DoH 或 FakeIP 上游的请求数、平均响应、采纳率和出错率。
  • 排行与缓存:高频域名、慢查询、客户端排行,以及分支缓存、主缓存、FakeIP 缓存等状态。

日常判断顺序:

  1. 标题旁应显示 运行中。
  2. 客户端发起查询后,有效请求数应增长。
  3. 上游不能持续高出错率;某个上游 100% 出错时先检查网络、证书和地址格式。
  4. 平均耗时突然升高时,到 DNS 日志按耗时和时间范围定位具体请求。
  5. 修改规则后,确认分流统计和日志中的分类随新请求变化。

不要只看缓存命中

新安装、低流量或刚清空缓存时命中率很低是正常的。服务是否可用应结合真实查询、响应状态、上游错误率和客户端结果判断。

规则管理:决定域名去向 ​

DNS 规则管理:规则分类、搜索、导入导出和排序

规则页上方有四个工作区:

  • 个性化名单:直连、拦截、代理、DDNS 域名、高变化域名、直连 IP 和重定向。
  • 广告拦截:管理在线广告规则和自定义拦截项。
  • 在线分流:管理在线规则源及其更新状态。
  • 自动判定:查看或调整自动识别结果。

添加一条个性化规则 ​

  1. 选择工作区,例如 个性化名单。
  2. 选择分类,例如 直连、代理 或 拦截。
  3. 点击 添加,填写规则内容和匹配模式。
  4. 保存后点击 刷新,确认数量和列表中出现新规则。
  5. 用客户端重新请求该域名,在 DNS 日志 核对最终分流分类。

常见匹配模式包括完整域名和域名后缀;页面显示的模式才是当前版本实际支持值。完整域名只命中一个主机名,域名后缀会影响其子域,添加前先估算影响范围。

批量维护 ​

  • 导出规则:大批量修改前先保留当前规则。
  • 导入规则:导入后检查分类和重复项,不要直接假设文件全部有效。
  • 搜索:按域名或关键词定位规则。
  • 拖拽排序:规则存在先后关系时,调整后必须发起真实查询验证。
  • 清空:破坏性操作;先导出并确认当前选中的分类。

规则看起来正确但未生效

先确认请求确实进入这台 MosDNS,再检查客户端缓存、浏览器 DoH、规则匹配范围和更高优先级规则。只刷新 Web 页面不会清除客户端或上游缓存。

客户端设置:控制哪些设备参与分流 ​

DNS 客户端设置:扫描、客户端列表和名单模式

页面顶部的三种模式含义如下:

模式行为适合场景
全部客户端所有进入 MosDNS 的客户端都按规则处理家庭网络默认选择
白名单仅名单中的客户端使用代理相关分流先小范围试用
黑名单名单中的客户端排除,其他客户端正常使用排除电视、IoT 等设备

首次使用会提示扫描网络约需 30–120 秒:

  1. 点击 立即扫描 或 重新扫描。
  2. 等待扫描结束,按 IP、MAC 和主机名确认设备身份。
  3. 需要时点击 新增客户端 手工补充未发现的设备。
  4. 切换到白名单或黑名单,并把目标设备加入当前名单。
  5. 从目标设备发起查询,在 DNS 日志中确认客户端 IP 与结果。

容器环境可能只看到容器网关地址;这表示源地址在进入容器前已被 NAT,不能据此区分真实终端。需要按设备控制时,应让 MosDNS 能看到原始客户端 IP,或结合宿主网络模式和路由拓扑调整部署。

更多操作见 设备管理。

DNS 日志:解释每一次解析 ​

DNS 查询日志:搜索、时间过滤、分流结果与响应耗时

日志表格包含时间、域名、客户端、查询类型、分流规则、响应状态和耗时。响应列还会展示返回地址及 TTL。

推荐排查流程:

  1. 点击 暂停刷新,防止正在阅读的记录移动。
  2. 在全局搜索框输入域名、客户端 IP 或响应内容。
  3. 需要部分匹配时启用 模糊搜索。
  4. 用时间筛选缩小到故障发生窗口。
  5. 核对查询类型是 A、AAAA 还是其他类型。
  6. 核对分流分类、响应状态和响应地址。
现象优先检查
没有任何记录客户端 DNS 指向、53 端口、防火墙、浏览器或系统 DoH
SERVFAIL上游连通、DoT/DoH 证书、配置语法和 MosDNS 运行日志
命中错误分类个性化规则、在线规则顺序、客户端模式和缓存
延迟很高对应上游耗时、超时回退链、网络质量
A 正常但 AAAA 异常IPv6 过滤、上游 IPv6 能力和客户端网络

DNS 查询日志用于分析请求;MosDNS 自身启动、加载配置和运行错误应从 进程管理 → MosDNS → 查看日志 或 日志查看 检查。

系统功能:上游、模式、过滤和缓存 ​

DNS 系统功能:上游 DNS、核心运行模式、请求过滤层和缓存策略

上游 DNS ​

上游按用途分组,可使用 UDP、TCP、DoT 和 DoH。修改时:

  1. 先保留至少一个已验证可用的上游。
  2. 地址包含协议时按页面格式填写,例如 tcp://、tls:// 或 https://。
  3. DoT / DoH 同时检查域名解析、证书和系统时间。
  4. 保存并生效后,从概述查看错误率,再用日志验证真实请求。

核心运行模式 ​

  • 兼容模式:未命中域名优先走国内 DNS,速度通常更快,但需要接受其分流边界。
  • 安全模式:未命中域名优先走代理 DNS,减少未知域名泄漏到国内上游的风险。

切换模式会改变未命中请求的默认去向。切换前记录当前值,切换后测试常用国内外域名、A / AAAA 和 FakeIP。

请求过滤层 ​

页面可控制广告拦截、结果拦截、查询类型过滤和 IPv6 相关策略。过滤项开启后,如果客户端表现为“无结果”,先在日志确认它是被策略拦截还是上游失败。

缓存策略 ​

分支缓存、主缓存、FakeIP 缓存、探测缓存和 UDP 快速路径分别服务于不同阶段。清空缓存会造成短时间命中率下降和上游请求增加;规则变更后只在确认旧结果仍被缓存时清理对应缓存,不要把“清空全部缓存”作为第一步。

与代理核心协同 ​

  • FakeIP 模式下,主路由和透明代理需要包含当前配置使用的 FakeIP 网段。
  • MosDNS 与代理核心分体部署时,DHCP DNS 指向 MosDNS,FakeIP 静态路由指向透明代理主机。
  • 当前活动代理核心与 MosDNS 的 FakeIP、IPv6 和分流策略应一致。
  • 切换 Clash / Sing-Box 时使用 代理服务 → 概览 的安全切换流程,不要只手工启停进程。

变更后的验证清单 ​

  • [ ] MosDNS 在进程管理中为运行中
  • [ ] 测试设备的请求出现在 DNS 日志
  • [ ] A 与 AAAA 查询符合预期
  • [ ] 直连、代理、拦截和未命中各测试一个域名
  • [ ] 上游没有持续异常错误率
  • [ ] 白名单 / 黑名单设备行为正确
  • [ ] 代理连接页能看到需要代理的真实访问

下一步 ​