首页 >PC >正文

DSM7无法安装ZeroTier?这里有解决办法(保姆式)

前段时间出差在外访问家里黑群晖,看套件中心有应用更新,遂手贱 全部点了 更新,依稀记得之前在群晖系统内部署ZeroTier的时候踩过坑,一种不祥的预感袭来

之后几天再也没能成功访问

DSM7无法安装ZeroTier?这里有解决办法(保姆式)

原因

回到家第一件事就是内网访问群晖,果然,套件中心的ZeroTier无法正常启动。

查阅资料后得知:

由于 DSM 7 不允许第三方应用直接使用 root 权限运行,因此升级到 DSM7 的用户原来的 ZeroTier 套件就各种报错,新用户通过套件中心安装 ZeroTier 也会存在问题

使用 Docker 版本则能解决这个问题。 当然,使用 Docker 方案,首次折腾会比较麻烦,但是一旦折腾好,就一劳永逸了。

重新部署 ZeroTier

由于此类教程具有一定时效性,具体操作中也容易踩坑,故在翻阅大量资料后,本人决定按照官方文档部署。


本文为了确保阅读连续性,尽量以纯命令+流程解释进行展示(懒得截图)

完成这个教程,你主要需要完成以下流程:

在 NAS 上启用 SSH

ssh 连接到 nas 系统中

创建一个持久的 TUN

在 DSM7 中安装 Docker 套件

创建一个Zerotier目录

ZeroTier容器的配置

在 NAS 上启用 SSH

找到 控制面板 - 高级模式 - 终端机和SNMP,启用 SSH 功能,并记下 SSH 端口号

DSM7无法安装ZeroTier?这里有解决办法(保姆式)

控制面板→高级模式→终端机和SNMP

DSM7无法安装ZeroTier?这里有解决办法(保姆式)

启用 SSH 功能,记下 SSH 端口号

2. ssh 连接到 nas 系统中

ssh username@nas_ip # 用户名和密码与 web 端的一致

sudo -i # 切换到 root 账号

3. 创建一个持久的 TUN

使用vi工具编写脚本到路径: /usr/local/etc/rc.d/tun.sh 这将使得 /dev/net/tun 在启动时调用

echo -e '#!/bin/sh -e ninsmod /lib/modules/tun.ko' >

/usr/local/etc/rc.d/tun.sh

给这段脚本添加权限(其实应该先vi这个空的脚本,然后添加权限,最后在写入上面的脚本内容,不然会提示你readonly)

chmod a+x /usr/local/etc/rc.d/tun.sh

运行脚本


/usr/local/etc/rc.d/tun.sh

检查TUN的运行状态(可选)

ls /dev/net/tun


/dev/net/tun


#创建TUN存在问题可查阅这篇文章:

Fix TUN/TAP not available on a Synology NAS

4. 在 DSM7 中安装 Docker 套件

这个过程就和所有的群晖套件一样,直接进入套件中心进行安装即可。不过注意在 DSM 7 测试版中,所有的套件也被归类为 Beta 套件,直接安装即可:

5. 创建一个Zerotier目录

mkdir /var/lib/zerotier-one

创建一个容器,这里将它命名为 zt(方便后续使用),这里会自动下载最新版的 ZeroTier

docker run -d

--name zt


--restart=always


--device=/dev/net/tun


--net=host


--cap-add=NET_ADMIN


--cap-add=SYS_ADMIN


-v /var/lib/zerotier-one:/var/lib/zerotier-one zerotier/zerotier-synology:latest


6. ZeroTier使用与配置

查看状态

docker exec -it zt zerotier-cli status

添加网络

docker exec -it zt zerotier-cli join XXXXXXXX #XXXXXXXX为你的ZeroTier NetWork ID

在 ZeroTier 后台授权当前设备,然后查看状态:

docker exec -it zt zerotier-cli listnetworks

返回 200 正常

查看运行中的容器:

docker ps

进入容器终端

docker exec -it zt bash

扩展阅读:升级ZeroTier

升级zerotier需要先停止容器并且移除容器,然后重新拉取最新的容器:

docker ps


docker stop XXXXXXXX

docker container rm XXXXXXXX

docker pull zerotier/zerotier-synology:latest


本文基于ZeroTier官方文档进行实战测试和理解


Synology NAS | ZeroTier Documentation

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

网友评论

验证码 换一张
取 消
暂无评论...
三日内热门评论文章
为您推荐
  • 相关阅读
  • 业界资讯
  • 手机通讯
  • 电脑办公
  • 新奇数码
  • 软件游戏
  • 科学探索