内部 DNS 服务器

MintFlow DNS 在 VPN 隧道内本地运行:回答 DNS 查询,选择直连或 VPN/代理上游,缓存结果,并向数据包引擎提供域名分流信息。它不是公共 DNS 服务,也不向其他局域网设备提供 DNS。

在规则模式中,请在 DNS 与分流启用自定义域名分流([dns] app-routing-enabled=true)。简易模式也使用内部 DNS。如果两者都关闭,内部 DNS 功能不会生效。即使全部流量直连,也需要连接 MintFlow VPN。

无需远程 VPN 的加密 DNS

将直连 DNS设为 DoH 或 DoT,并选择直连出口。iOS 的加密 DNS 和 DNS 广告拦截均免费,无需远程 VPN 订阅或 HTTP 检查证书。

[dns]
app-routing-enabled=true
direct-dns=tls://1.1.1.1
optimistic-dns-caching=true

[routing]
DNS-FALLBACK,DIRECT
DEFAULT,DIRECT

1.1.1.1 这样的普通 IP 使用明文 DNS;tls://1.1.1.1 使用 DoT;https://cloudflare-dns.com/dns-query 使用 DoH。请选择你信任的解析器。加密保护到解析器的连接,但解析器仍可看到查询。Cloudflare 的 DoT 文档说明了这一传输方式。

分流 DNS 与 VPN DNS

直连 DNS解析直连域名,VPN DNS解析分配给 VPN 或代理的域名。例如,工作域名可交给私有解析器,其他名称交给所选公共解析器。所选出口必须能够访问私有解析器。

当加密的 vpn-dns 上游使用域名时,须配置 VPN-DNS-SERVER-DOMAINS,指定引导解析经过哪个 VPN/代理;bootstrap-dns 提供初始解析器地址。引导查询与加密的应用域名查询是两个步骤。

[dns]
app-routing-enabled=true
direct-dns=tls://1.1.1.1
vpn-dns=https://cloudflare-dns.com/dns-query
bootstrap-dns=1.1.1.1,8.8.8.8

[routing]
VPN-DNS-SERVER-DOMAINS,L3VPN,my-wireguard
DNS-FALLBACK,L3VPN,my-wireguard
DEFAULT,L3VPN,my-wireguard

此片段要求已配置可用的 my-wireguard 接口和对等节点。完整导入流程见 WireGuard 服务商与加密 DNS。同时使用直连与 VPN/代理路径时,请配置两组 DNS。

静态 DNS 记录与 Tailscale 名称

Pro 静态记录可用于家庭 NAS、测试服务器或本地服务,无需将地址发布到公共 DNS:

[dns-hosts]
nas.example.com=192.168.40.10
lab.example.com=192.168.40.20,192.168.40.21

记录精确匹配主机名,不支持通配符,也不自动匹配子域名。最多 256 个名称,每个名称支持 1–16 个 IPv4 地址。它们在域名规则和广告过滤前本地应答,但不会创建流量路由;请添加合适的 CIDR 路由,或确保地址能够通过其他路径访问。简易模式不启用静态及派生记录。

Pro Tailscale 接口设置 drive-dns:true 后可派生对等节点 IPv4 记录。用户静态记录优先于派生名称。活动 tailnet DNS 区域内的未知名称保留在本地,不会发往公共 DNS。这是 MintFlow 派生 DNS,不是官方客户端的完整 MagicDNS 配置。见 Tailscale 设置。

2.1.0 内置 DNS 广告拦截

过滤需要主动启用,在设备本地执行,仅放行的查询会发给上游。每次选择一个预设:AdGuard DNS filter(默认)、HaGeZi Multi Normal 或 OISD Small。三者均内置初始离线快照;打开应用会为已启用列表安排异步更新,也可点刷新手动检查。更新失败时继续使用最后接受的副本。

  1. 选中所需配置,打开 DNS 与分流 → DNS 广告拦截。
  2. 开启过滤、选择列表并保存;必须启用内部 DNS。
  3. 启动 VPN。已连接时请检查活动状态:支持的纯过滤修改可实时应用,其他配置修改可能需要重启。
  4. 使用域名检查器、DNS 日志 → 规则类型及工具 → DNS 运行时 → DNS 广告拦截查看实际状态。仅检查缓存列表不能证明运行中的隧道会阻止该域名。
[dns-adblock]
enabled=true
list=adguard-dns

被阻止的查询收到 NODATA(成功但无答案的 DNS 响应),不查询上游,也不返回伪造地址。DNS 过滤不需要 MITM 证书,列表也不消耗域名集合路由额度。

例外与限制

规则模式优先级为用户静态记录 → Tailscale 派生 DNS → 域名集合 → 有序关键词 → 广告过滤 → DNS 兜底。命中转发类域名规则会绕过广告过滤;Drop/Reject 规则仍按自身行为阻止。请缩小放行例外范围。DNS-FALLBACK,DIRECT 不会关闭过滤。简易模式顺序为广告过滤 → 所选出口,已保存的静态及域名规则不启用。

过滤检查查询的 DNS 名称,不检查每个 URL 或返回的完整 CNAME 链。它不能移除页面空白,也无法可靠阻止与正常内容共用域名的广告,包括许多视频及信息流广告。应用自带的加密 DNS、代理端远程解析、直接使用 IP 或已有地址缓存,都可能绕过本地 DNS 检查。2.1.0 不支持自定义订阅或叠加列表。

遇到误拦截时,先检查命中的规则。规则模式可增加范围较小的转发域名集合例外;简易模式可换列表或关闭过滤,也可切换规则模式使用例外。示例见路由规则引擎。

阅读本页 Markdown