logo
icon

Syncthing Node (P2P)

Syncthing 是持续性的点对点文件同步工具。在设备之间实时同步文件,无需依赖云端。本模板通过暴露 BEP 同步协议(TCP/UDP 22000)启用 P2P 直连,让 peer 之间无需经过 Syncthing 的中继服务器即可连接。部署在 Zeabur 上作为永远在线的同步节点。

template cover
部署次数0
发布者tznthou
创建于2026-05-18
标签
ToolFile Sync

模版内的服务

Syncthing Node (P2P)

支持直接 P2P 连接的持续性点对点文件同步工具 — 无需依赖 Syncthing 中继服务器。

本模板通过 Zeabur Port Forwarding 暴露 BEP 同步协议(TCP/UDP 22000),让其他 Syncthing peer 能直接连接到您的 Zeabur 实例。Zeabur 实例可作为永远在线的同步节点,确保即使其他设备离线,文件仍保持同步。

首次启动

  1. 打开域名 — Syncthing Web UI 直接打开
  2. ⚠ 在第一分钟内设置 GUI 密码 — 打开 Actions > Settings > GUI 选项卡,设置账号密码。Web UI 默认无认证公开暴露;若拖延,任何扫描到您域名的人都可接管节点
  3. 添加远程设备 — 在 Syncthing 实例之间分享设备 ID
  4. 添加文件夹 — 选择要同步的文件夹及目标设备

启用 P2P 直连(不走中继)

默认情况下 NAT 后的 Syncthing 可能会回退到 Syncthing 中继网络,传输速度受限。本模板已预先暴露 TCP/UDP 22000 以支持直连。

步骤 1 — 找到转发地址。 在 Zeabur 控制台打开本服务的 Networking 标签页。您会看到 sync-tcp(22000/TCP)和 sync-udp(22000/UDP)两个端口的转发条目,格式均为 <host>:<port>。在 dedicated server 项目下,这会是您 server 的公网 IP 与分配的端口(实际数值会显示在 dashboard 上,每次部署不同)。TCP 与 UDP 的转发端口通常共用 同一个数字(Zeabur 对同一内部端口的两个 listener 使用单一外部端口)。

步骤 2 — 配置 peer 设备。 在您的其他 Syncthing 设备(笔记本、手机、NAS 等)上,先添加此 Zeabur 实例为远程设备,然后点入设备项展开 Advanced,将 Addresses 字段设为(逗号分隔):

tcp://转发主机:转发TCP端口, quic://转发主机:转发UDP端口

将占位符替换为步骤 1 的值。若想在静态地址失败时保留中继作为 fallback,可在末尾追加 , dynamic。请勿仅保留 dynamic — global discovery 无法推断转发的随机端口,Syncthing 会静默回退到中继。

步骤 3 — 验证。 在 Web UI 的 Remote Devices 面板中,连接状态应显示 TCPQUIC(而非 Relay)。中继带宽瓶颈被避开。

运维注意事项

  • 不要同步 /var/syncthing/config — 它包含设备的私钥和 Device ID。跨机器同步会造成 Device ID 冲突。
  • 静态数据在 Zeabur 磁盘卷上是明文。 若将云端视为不可信,请使用 Syncthing 的 Untrusted Devices / Encrypted Folders 功能。
  • 转发主机/端口可能变化 — Zeabur 通常保持稳定但不保证永久。若变化,请更新 peer 设备上的 Addresses。
  • 不要同步其他云端服务管理的目录(iCloud Drive、OneDrive、Dropbox、Google Drive)。它们会与 Syncthing 争夺文件所有权,产生无止尽的 sync-conflict 冲突文件。Syncthing 文件夹请放在其他同步引擎范围之外的路径。

持久化数据

所有配置文件和同步数据存储在 /var/syncthing(由 Zeabur 磁盘卷支持)。

授权

MPL-2.0 — GitHub · Official Site · Documentation