Repository navigation
v1.1.0
安装
在飞牛 应用中心 → 手动上传应用 中选择对应架构的安装包:
| 文件 | 适用架构 | 确认方式 |
|---|---|---|
fn-wireguard-1.1.0-amd64.fpk |
x86_64(Intel / AMD) | uname -m 输出 x86_64 |
fn-wireguard-1.1.0-arm64.fpk |
ARM64 | uname -m 输出 aarch64 |
系统要求 fnOS ≥ 1.1.3100(低于此版本应用中心会直接拒绝安装)。
使用前请在路由器上把 WireGuard 端口(默认 UDP 51820)转发到 NAS 的局域网地址。
从 1.0.0 升级可直接覆盖安装:数据库迁移随启动自动完成,连接、设备与账号都不受影响。
更新内容
新增功能
- 两处内网互联(异地组网):把两台 NAS 的内网打通。一端生成邀请、另一端导入即完成配对——隧道地址、双方公钥、准入地址与通行范围由同一份数据推导,不必两头照着填(手工填这四处、错一处都只是「不通」,最难自查)。配对完成后就像在同一个局域网里:两台 NAS 可互访对方内网;连上任一台 NAS 的设备(手机、电脑)也会自动带上对端内网,能访问两处的机器。生成过的邀请随时能再取一份(互联窗口的「已生成的邀请」页签,或设备列表里那条「对端 NAS」条目的「邀请」按钮)。
- 导入前先给一份确认清单:导入互联邀请时,先列出这次将要做的事——新连接名、隧道地址、实际会用哪个监听端口、放行哪些来源、哪些流量会进隧道、对方已经占用了哪些网段——确认之后才真正建立;改了粘贴内容或端口,清单会自动作废,避免「在 A 的清单上确认、执行下去的却是 B」。
- 对端占用网段台账:导入时把对方已占用的隧道网段记在本机,之后新建连接的自动分配会避开它们,体检里也会持续比对「两端的默认网段撞了没有」。此前这份信息只在导入那一刻提示一次,事后无从自查。
- 加设备前的一次劝阻:往站点互联连接上直接添加普通设备时会先提醒一次——那条连接的隧道网段由两台 NAS 共用,两端各自加设备会算到同一个地址,而现象只是「能访问对端 NAS、就是访问不了对端的某几台设备」。加在普通连接上的设备同样会自动访问对端内网,效果一样。
- 设备列表新增「设备 IP」列:直接看到每台设备在隧道里用的地址(取准入地址里的主机项,不会把对端网段误当成设备地址),排查「某台设备连不上」不必再翻到编辑页。
修复问题
- 开着「内网域名解析」时,「需重新扫码」怎么重新扫都清不掉:同一份设备配置指纹用了两套 DNS 推导——记录「设备刚拿到什么」时用实际下发值,事后比对「应当是什么」时却用连接里填的 DNS。改为两处同源,并补了反向断言(关掉开关后下发的 DNS 真的变了,必须报过期),否则这次修法会退化成「永不报过期」。
- 「域名解析方式 → NAS 也一起使用」从未实现:文案声称它会修改 NAS 的系统 DNS、卸载时自动还原,与实现正好相反(本应用绝不碰
/etc/resolv.conf)。现收敛为「下发给设备 / 不下发」两种并真正实现了后者,历史值一律归一(对存量值报错会让这类连接连「改个别的地方」都保存不了),文案改为「本应用不会修改 NAS 自身的系统解析设置」。 - 设备配置渲染不再「好心兜底」:原先 DNS 为空时会回落成连接里的 DNS(把「不下发」悄悄变成「下发」)、通行范围为空时会回落成
0.0.0.0/0(把设备的全部上网流量塞进隧道,而用户以为仍然只访问家里设备)。两处都删掉,渲染只呈现调用方算好的值。 - 两处静默损坏:编辑设备不再清空它的二次加密口令(留空即保持原值,只有明确点「生成新口令」才轮换);手填了 IPv4 不再追加一个自动分配的同族地址(此前界面恒传
auto_address=true,用户「改成不重复的地址」因此失效)。 - 同一连接内地址重叠即拒绝:此前只拦「完全相同」,于是设备与对端 NAS 抢同一个地址会被判成不冲突。
- 「生成邀请」后立即刷新外层列表:原先只在导入成功后才刷新,于是「生成邀请 → 复制配置 → 关闭对话框」这条最常用的路径看到的是旧列表。
- 连接列表里的异常提示不再折成一堵墙:表格的「工作状态」列只有 110px,此前把整句话塞进这一列,一条提示能把整行撑成七八行,相邻连接也被挤得看不清。现在列里只放 5 个字以内的短标签,鼠标悬停看完整说明;需要去「系统维护」看具体结论的那几类,点一下标签直接跳过去(手机卡片视图宽度充裕,仍直接显示整句话)。
其它
- 代码体检:删掉 5 个只有定义、全仓库无调用的 Go 函数与前端 7 处未使用声明及 3 个随之失效的 import;把已存在却从未接上的类型接到调用点(字段名一改即可在编译期报错)。
- 关于「电脑断开连接后 FN Connect 用不了」:查证结论是 NAS 侧本应用不动系统网络——路由只写自己的策略路由表、主表零改动;防火墙只在自己表内且每条规则都限定「源属于隧道网段」;绝不碰系统 DNS。成因在设备侧:下发的 DNS 是本机隧道地址,只在连接建立期间存在,断开后由客户端负责还原(异常退出、睡眠、崩溃、强杀都可能留下)。因此生成配置时给出提醒,「内网域名解析」的说明与 README 的 Q16 写明「DNS 残留 / 默认路由残留」两类现象的分辨方法与恢复命令。
- 新增 14 个回归用例:覆盖地址撞车、DNS 指纹、导入预检与端口一致性、站点网段重叠、站点占用网段可见性、同机器标识告警、幂等清理等。
- 依赖:无新增。
- 文档与截图:README 与路线图同步更新;界面截图补充「互联导入确认清单」,并重拍带「设备 IP」列的设备列表。
详细说明见 README。
完整变更对比:v1.0.0...v1.1.0