Skip to content

智能连接

智能连接 是飞牛原生 FPK 在公网直达子域模式中提供的局域网 DNS 分流:外网仍把 nas.example.com 解析到公网入口,局域网设备则从本机 dnsmasq 得到 NAS 的私网 IPv4,避免 NAT 环回和绕公网访问。OpenWrt 当前软件包不应把它视为一键可用能力,应自行配置分流 DNS。

它只改变 DNS 解析,不创建 Host 映射、不修改公网 DNS,也不切换运行模式。

适用条件

同时满足以下条件时再启用:

  1. 当前为 子域模式,不是 内网穿透 → 子域映射
  2. 已配置鉴权 Host 和至少一条业务 Host 映射。
  3. fn-knock 所在设备有稳定的私网 IPv4。
  4. 局域网客户端会把这台设备作为 DNS 服务器。
  5. 53 端口未被其他 DNS 服务占用。
  6. 当前为飞牛原生 FPK,且具备宿主机 dnsmasq 和服务管理能力。

子域入口的配置见 子域模式上手子域映射

DNS 链路

text
外网设备 -> 公网 DNS -> 公网入口 -> fn-knock
局域网设备 -> 本机 dnsmasq -> 192.168.31.20 -> fn-knock

智能连接会自动同步当前 Host 映射中的鉴权 Host 和业务 Host,例如:

text
auth.example.com  -> 192.168.31.20
nas.example.com   -> 192.168.31.20
alist.example.com -> 192.168.31.20

后续增删 Host 映射会触发重新同步。没有可用 Host 时不能启用。

访问策略会发生什么

智能连接不只是缩短链路。流量改走局域网后,网关通常会识别到客户端的私网来源,认证结果为 local_exempt

  • 开启 要求登录 的 Host 不再要求该局域网来源先登录。
  • 历史配置中的严格白名单规则也会放行本地来源,不会强制局域网设备进入公网白名单。
  • 退出浏览器登录只结束会话,不会取消网络的 local_exempt 属性。

因此,启用智能连接等于把该局域网纳入信任边界。访客 Wi-Fi、不受信任的 VLAN 或多人共享网络不应直接使用同一分流 DNS,除非接受这些网络中的设备获得本地例外。

公网认证必须使用移动网络等真实外部链路验证,不能在已分流的 Wi-Fi 中测试。

配置

路径:系统设置 → 功能 → 智能连接

  1. 打开 智能连接
  2. 页面提示资源未就绪时,先安装并初始化 dnsmasq
  3. 选择局域网客户端实际可达的私网 IPv4,例如 192.168.31.20
  4. 点击 保存并同步,确认同步域名数量和最近同步时间。
  5. 在路由器 DHCP 中把 DNS 服务器设为该私网 IPv4;也可先在一台测试设备手动设置。
  6. 重新获取网络配置,等待缓存刷新后查询各子域。

选择主局域网接口的地址,不要选择 Docker 网桥、隧道或仅供内部通信的虚拟接口。

客户端必须使用这台 DNS

后台保存成功只表示本机已写入并重载 dnsmasq 规则。若路由器仍向客户端下发其他 DNS,或浏览器启用了绕过本地 DNS 的加密 DNS,查询仍可能得到公网地址。

本地规则 TTL 约为 30 秒。变更后可等待缓存过期、重新连接 Wi-Fi,或刷新系统与浏览器 DNS 缓存。

验证时查询:

text
auth.example.com
nas.example.com

返回值应是所选私网 IPv4,随后请求日志中的来源也应符合局域网预期。

dnsmasq 状态

状态含义
未安装没有可用的 dnsmasq 程序
待初始化程序存在,但服务或初始配置尚未准备好
未运行已有配置,服务当前未正常工作
已就绪可以写入规则并重载服务

初始化失败时先检查 53/tcp53/udp 的占用,再检查运行环境是否能管理 dnsmasq 服务。不要同时让两个 DNS 服务绑定同一地址和端口。

平台边界

  • 飞牛原生 FPK 可使用智能连接。
  • Docker 不支持。容器不能替宿主机接管 dnsmasq53 端口,后台会隐藏或拒绝该能力。
  • OpenWrt 当前软件包没有可验证的自动 dnsmasq 接入;请通过 OpenWrt 的 UCI / dnsmasq 自行部署分流 DNS。
  • Windows x86_64 不支持智能连接,也不提供 dnsmasq 或局域网 DNS 的应用内管理。
  • 没有宿主机管理能力的环境应自行部署分流 DNS。
  • 内网穿透的子域映射不支持智能连接。该拓扑的公网入口在隧道平台,局域网分流需要在路由器或独立 DNS 中自行配置。
  • OpenWrt 不提供 Web 终端和应用内 FPK 更新;这些限制与 DNS 分流是否可用是不同能力。

它不会处理的内容

  • 不修改注册商、Cloudflare 或其他公网 DNS 记录。
  • 不自动更新公网 IPv4 / IPv6;使用 DDNS 管理Cloudflare DDNS 配置
  • 不开放路由器端口、防火墙或 Docker 发布端口。
  • 不改变上游服务监听地址,也不能阻止局域网用户绕过网关直连上游。

排错

  1. 页面不可用:确认当前为公网直连子域模式,并检查部署能力。
  2. 没有可同步域名:先创建鉴权 Host 和业务 Host。
  3. 没有可选 IP:检查主网卡是否取得 10/8172.16/12192.168/16 地址。
  4. 初始化失败:检查 53 端口占用和 dnsmasq 服务状态。
  5. 客户端仍解析到公网:检查 DHCP 下发、手动 DNS、加密 DNS 和缓存。
  6. 域名已解析到私网但打不开:检查实际网关端口、证书和 Host 映射,不要再排查公网 DDNS。

其他功能开关见 系统设置

QQ群:1081609274