我在 OpenWrt 上跑了 tailscale,我是直接下载的二进制,并且写了一个 init.d 的重启后自动打开的脚本:
https://gist.github.com/FaiChou/45d9bb4f0a8018ba4d339f335429c12f.js
当第一次运行时候,会提示点击链接进行授权,授权完成后,会将登录信息记录在 /var/lib/tailscale/tailscaled.state
中,能看到这文件中有一堆登录信息。
我理解的是,当重启系统后,运行起来 tailscaled 后再执行 tailscale up
,会从这个 tailscaled.state 记住的信息直接登录。
但当重启后,这个 tailscaled.state 数据被清空(仅保留着 _machinekey
一个字段),通过 logread
读取的日志也显示需要再次点击链接授权。
虽然有另外一个方法:使用 authkey 登录,在后台生成一个可重复使用的 authkey ,但这样每次重启后使用同一个 key 登录,后台会有重复的设备,而且设备名称和 ip 也一直变。
再者,/var
这个目录不是 ramfs tmpfs 这种基于内存类型的目录。所以持久化存储应该不是问题。
所以这是为什么?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.