已经解决了,用docker解决的,方法如下:
1、去群晖套件中心下载安装Docker;
2、安装完成后打开Docker,看最左边一排,点“注册表”
3、然后在右上角搜索栏搜索“zerotier-one”按回车,然后找到“zerotier-synology”,双击下载;
4、等下载完成后,在Docker最左边一排,点“映像”,右边就看到刚才已经下载好的“zerotier-synology”,然后双击打开;
5、打开后,勾选“使用最高权限执行容器”,然后再点下边“高级设置”,打开后,勾选“启动自动重新启动”;
6、然后点最上面一排“存储空间”,点“添加文件夹”,弹出的窗口中,选“docker”文件夹就行;
7、然后“装在路径”上添上:/var/lib/zerotier-one;
8、然后再点最上一排“网络”,勾选“使用与Docker Host相同的网路”,然后点最下边“应用”后退出。
9、然后再在ZeroTier容器终端机,通过命令启动,输入zerotier-cli join ID,返回OK就证明成功,最后去ZeroTier后台启用就搞定
如果出现报错提示出现意外终止,不停重启,并且日志中出现:
ERROR: unable to configure virtual network port: could not open TUN/TAP device: No such file or directory
可能是tun模块出现问题
Synology 的 DSM 7 不允许第三方应用程序以 root 身份运行。因此,我们现在推荐使用 Docker 来运行 ZeroTier。
它是在您的 NAS 上运行第三方应用程序的更安全的方式。
设置后,此配置将在重新启动和 DSM 升级后保持不变。
创建一个持久的
以管理员方式运行
sudo -i
检查tun模块状态
检查是否安装了 tun 模块:
lsmod | grep tun
如果结果为空,请尝试安装它:
insmod /lib/modules/tun.ko
如果一切顺利,继续进行下一个测试。
测试tun.ko模块是否有效
确保 tun.ko 模块可以正常工作:
mkdir /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun
cat /dev/net/tun
如果 cat 命令的返回结果是 File descriptor in bad state,则表示模块已正确安装。
使tun.ko模块持久化
模块安装需要在每次 Synology 重启时保持持久性,就必须重复使用 insmod 命令。
可以创建开机脚本搞定,执行如下命令进行创建:
cat <<EOF > /usr/local/etc/rc.d/tun.sh
#!/bin/sh -e
insmod /lib/modules/tun.ko
EOF
给脚本可执行权限:
chmod a+x /usr/local/etc/rc.d/tun.sh
重新启动 Synology NAS 或手动执行一次脚本。完成!
运行一次脚本以创建一个 TUN
/usr/local/etc/rc.d/tun.sh