跳转到内容

自建私有云笔记:Syncthing + Tailscale + Joplin 全平台同步

一套完全免费、无云商、端到端可控的笔记同步方案: Joplin(笔记) + Syncthing(P2P 同步) + Tailscale(异地组网)


最初的需求很简单:

  • 不想把笔记丢到商业网盘
  • 要跨平台:Windows + Android
  • 手机断网也要能看、有网就能同步
  • 不想折腾公网 IP、DDNS、端口映射

最终方案选型:

组件作用
JoplinMarkdown 笔记 + 附件管理
Syncthing开源 P2P 文件同步(替代 Dropbox)
Tailscale零配置虚拟内网,解决 NAT 和异地直连

Joplin (Windows)
↓↑ 文件系统同步
Syncthing (Windows)
↕ Tailscale 虚拟内网直连
Syncthing (Android)
↓↑ 文件系统同步
Joplin (Android)
  • Syncthing:负责把 Joplin 的同步目录在设备间同步
  • Tailscale:让两台设备永远”在一个内网”
  • Joplin:只管读写笔记,不关心网络细节

Syncthing 本体(syncthing.exe)是纯后台命令行程序,没有系统托盘、没有开机自启、没有图形外壳。Windows 上直接跑会有这些麻烦:

  • 每次要手动启动或注册 Windows 服务
  • 同步状态不可见(需自己开浏览器)
  • 锁屏/注销可能中断进程

SyncTrayzor 是 Windows 社区维护的官方推荐前端封装:

功能SyncTrayzor ✅裸 syncthing.exe
内嵌 Syncthing 内核✅ 自动捆绑✅ 需自己下
系统托盘图标 + 同步状态
开机自启(用户级)✅ 勾选即开⚠️ 需手动配服务
一键升级 Syncthing⚠️ 手动替换

下载地址:https://github.com/canton7/SyncTrayzor/releases

SyncTrayzorSetup-x64.exe → 安装 → 自动打开 http://127.0.0.1:8384

  • 安装 Syncthing-ForkF-Droid / GitHub
  • 原版已停止维护,Fork 版持续更新
  • 打开 App,记录 Device ID(也可展示为二维码)

在电脑 SyncTrayzor 的 Web UI 中:

  1. 右下角 Add Remote Device
  2. 粘贴手机 Device ID
  3. Save → 手机端弹出”新设备请求” → Accept

电脑端 Syncthing Web UI:

  1. Add Folder
  2. Folder LabelJoplinSync
  3. Folder PathC:\Users\你的用户名\Syncthing\JoplinSync
  4. Sharing 标签页 → 勾选手机设备 → Save
  5. 手机端接受共享,选择本地路径:
    /storage/emulated/0/Syncthing/JoplinSync

Windows / Android 通用步骤:

  1. 设置 → 同步(Synchronization)
  2. 同步目标:选 File system(文件系统)
  3. 同步目录(填绝对路径):
    • Windows:C:\Users\你的用户名\Syncthing\JoplinSync
    • Android:/storage/emulated/0/Syncthing/JoplinSync
  4. 同步(Synchronize)

首次同步会生成大量小文件,这是正常现象——Joplin 的笔记和资源都会写成独立文件。

解决方法:

  1. 同步设置页 → 展开 显示高级设置
  2. 勾选 「同步时从同步目标中删除已删除的笔记/资源」
  3. 每台设备都要单独开启

五、解决”连上了但很慢”的问题(Tailscale)

Section titled “五、解决”连上了但很慢”的问题(Tailscale)”

Syncthing 日志中出现:

Detected NAT type: Symmetric NAT
Joined relay

说明两边网络是严格 NAT(对称型),Syncthing 打洞失败,被迫走官方中继(relay),带宽有限,速度慢、延迟高。

Tailscale = 零配置 WireGuard 虚拟内网,把你的所有设备拉进同一个虚拟局域网:

  • 每台设备装 Tailscale → 登录同一账号 → 自动获得固定虚拟 IP(如 100.x.x.x
  • 不管设备在家 WiFi、公司网还是手机 4G/5G,都像插在同一台路由器上
  • 流量端到端加密(WireGuard 协议),控制服务器只分发密钥,看不到你的数据
  • 免费版个人日常使用完全够用

Windows

安装 → 托盘图标 → Login → 浏览器登录

Android

  • Play Store / F-Droid 安装 Tailscale
  • 登录同一个账号

安装完成后两台设备各自获得虚拟 IP(如 100.82.x.x100.75.x.x)。

在电脑 Syncthing Web UI:

  1. 点手机设备卡片 → Edit
  2. 展开 Show Advanced
  3. 找到 Addresses 字段(默认是 dynamic
  4. 改为手机 Tailscale IP,例如:
    tcp://100.75.23.18:22000
  5. Save → 等设备变绿

手机端同理(可选):编辑电脑设备 → Addresses 改为电脑 Tailscale IP。

成功标志:

  • 设备状态变绿 Connected
  • 鼠标悬停设备 → 连接显示 tcp://100.x.x.x:22000
  • 不再是 relay://... → 直连成功,速度接近局域网

国产 ROM 容易杀后台,需要手动配置:

系统设置(各品牌路径略有差异):

  1. 设置 → 应用管理 → Syncthing-Fork → 电池 → 不允许优化 / 无限制
  2. 允许开机自动启动 + 允许后台运行
  3. 多任务界面长按 Syncthing → 锁定🔒

Syncthing App 内设置:

打开 Syncthing-Fork → Settings → Run Conditions

  • ✅ Run on WiFi
  • ✅ Run when charging(可选)

  • 笔记跨平台实时同步(Windows ↔ Android)
  • 手机断网可离线阅读,有网自动同步
  • 不依赖任何商业云服务
  • 数据全程在自己设备之间流动
  • 异地 WiFi / 4G / 公司网络均可直连
  • 没有月费、没有容量上限

问题解决方案
电脑删笔记手机还在开启 Joplin 同步高级设置中的”删除同步”选项
手机不弹共享请求手动添加文件夹,Folder ID 必须与电脑完全一致
同步速度慢安装 Tailscale,让 Syncthing 走虚拟内网直连
手机经常断连关闭电池优化 + 允许自启 + 锁定后台
iOS 能用吗?❌ iOS Joplin 不支持 File System 同步,只能用 Joplin Cloud / WebDAV / Dropbox
数据安全吗?Syncthing TLS 加密 + Tailscale WireGuard 加密 + Joplin 可选端到端加密
首次同步特别慢正常,Joplin 会生成大量小文件,Syncthing 初次索引需要时间