前言:
Tailscale作为基于wireguard的虚拟组网软件,经过我个人长期体验下来,认为比同类型的其他软件更值得推荐,近日在qnap nas上也进行了安装使用,踩了一些坑,小结一下供各位参考。
一般姿势:
1、官方或者第三方APP商店都是旧版本,最新版的下载地址在Ghub:
https://github.com/tailscale/tailscale-qpkg/releases/
2、根据cpu架构下载相应的安装包;
3、App Center设置先开启允许未经签名的情况下安装程序,然后进行手动安装;
4、安装后,启动APP,正常会转向浏览器开启验证界面,登录通过验证即可,如果此时作为一个普通节点使用,就可以到此为止了。
但是,但是总会有意外发生
由于此时我的路由器已经安装运行了Tailscale并且开启了路由通告,意外就发生了,可能是因为QnapNAS上安装的tailscale默认启用了--accept-routes,此时QnapNAS已无法通过LAN下的任何设备访问了。
经过网上爬取资料,问题得到解决,步骤如下:
首先要先恢复对NAS的正常访问
在Tailscale官网的admin面板上,把NAS节点先删掉,再等网络恢复,等不及就强制重启NAS;
登录NAS开启SSH访问,并通过ssh客户端连上,
不管有没有必要先切换到root下:
sudo -i
再输入一次密码即可;
得到系统卷的路径:
[admin@TS-453Bmini ]# getcfg SHARE_DEF defVolMP -f /etc/config/def_share.info
/share/CACHEDEV1_DATA
转到Tailscale软件包目录:
cd /share/CACHEDEV1_DATA/.qpkg/Tailscale
此时,即可通过自定义参数来启动tailscale了。
如果你跟我一样,已经在路由器上运行tailscale并开启了路由通告,则NAS上的tailscale自定义参数:
./tailscale up --accept-dns=false --accept-routes=false
当然,如果本地已经有一个开启了路由通告的设备,在NAS上再跑一个Tailscale实际上是没有意义的。
而我本意是想配置好以后把这台NAS搬到办公室,一来蹭一下单位上下百兆对等的专线,二来方便在家里访问办公室的局域网,所以你如果你跟我的情况一样,就还需要换个启动参数:(假设192.168.6.0/24是设备所在的LAN网段)
./tailscale up --advertise-exit-node --accept-dns=false --accept-routes --advertise-routes=192.168.6.0/24
--advertise-exit-node 出口节点,当手机开启Tailscale连上后,可以把该设备作为出口节点,所有流量通过节点转发,当需要外面魔法上网的时候,你懂的;
--accept-routes 接受路由通告,家里也有一台开启路由通告,两台相互通告后,就可以把两个局域网连通;
当然最后别忘了在Tailscale官网上通过验证并手动开启enable key expiry、Subnet routes、Exit node才可生效;
当家里、办公室两台设备如此运行Tailscale后,我可以直接以局域网IP访问两个局域网,这比搞什么DDNS、反向代理的安全性和方便性就可强多了,用来moonlight串流打游戏、远程办公体验极佳,再有其他的使用场景就看大家发挥想象力了。
后记:
第一次在B站投稿,写的可能有点乱,以上仅仅给同使用Qnap的朋友做一点参考,群晖在硬件上挤牙膏又是高价低配,像极了当年的HTC卖手机的样子,Qnap的系统和生态虽然差点,但是胜在配置主流,性价比高,希望越来越多把Qnap的使用经验发出来分享。 作者:再回首逝梦 https://www.bilibili.com/read/cv24126307/ 出处:bilibili
评论区