前言
由于之前部署 headscale 的服务器域名发生变化,必须更新各个 tailscale 客户端的配置。更新配置过程比较简单,对于 Windows 和 Mac 只需要在右键菜单中 add account 并切换过去就行,对于 Linux 可以先 logout 再重新 login,这个过程中 headscale 服务端中的配置不会被覆盖,因此各个客户端获得的 ip 也会保持不变。
Mac 平台误切换至无法访问的 account 导致卡死的解决方案
在 Application -> Tailscale.app -> 显示包内容 -> MacOS 目录启动终端,后续可以使用和其他平台类似的 CLI command 强制切换 account(参考 tailscale 的官方 user switching guide)。
|
|
删除多余 account
上述 add account 的缺点在于此前的失效 account 也会在列表中显示,无论怎么 logout 也无法删除。后续使用中发现,部分机器重启后 tailscale 会一直尝试连接失效的 account,每次都需要手动切换成 active account,给使用带来了很大的困扰。
正常方式无法删除多余的 account,我们可以参考官方 uninstalling guide 来手动修改配置文件,之后卸载并重新安装 tailscale 客户端即可。这样的方式不会影响 headscale 服务端中的配置,同样也不会改变获得的 ip。
Windows
修改 C:\ProgramData\Tailscale\server-state.conf
文件的内容,其结构为
|
|
其中所有值都以 base64 编码,可以通过 base64decode 解码,修改完成后再通过 base64encode 编码写回。按照自己的需求,解码 _profiles
找到不需要的 account 删除,并删除对应 profile-*
的项,保存后重新安装 tailscale 即可删除 account。
实际上应该有不用重装软件的方法,但我用 Process Monitor 也没有找到对应的配置文件在哪,只能暂时使用这种并不优雅的解决方案。
Linux
和 Windows 类似,修改 /var/lib/tailscale/tailscaled.state
文件的内容。
MacOS
未完待续(还在找配置文件)