网上(包括 v2 )看了很多,大多都是说用 tailscale 的 exit node 模式,但我的设备(家里)只有一台 root 的安卓、一台 Ubuntu Server 配 clash-docker ,一台 windows ,我尝试去设置 Ubuntu 为 exit-node ,但照样不能如愿,不知道具体怎么设置。( Ubuntu 是 ping 不通 google 的)
于是我就想能不能从问题源头安卓手机这下手,还真给我搜到了个 Magisk-Tailscaled,用 KernelSU 安装模块之后,按照步骤,在 Tailscale 管理界面确实能看见设备连接上了,但没办法直接通过类似 http://100.x.y.z:8080 访问其他设备的服务。翻遍项目的 issues ,得知如果要用的话得配置 sock5 代理,然后通过 clash 这种代理软件进行分流。
问题就出在这了,我配置了之后甚至成功过一次,但重启后就失效了……
以下是我在手机终端的操作:
tailscaled -tun=userspace-networking -statedir=/data/adb/tailscale/tmp/ -state=/data/adb/tailscale/tmp/tailscaled.state -socket=/data/adb/tailscale/tmp/tailscaled.sock -port=41641 -socks5-server=localhost:41099
后面这段 -socks5-server=localhost:41099 是我从一篇博客得知的,也即我的 socks5 端口设为 41099 。
tailscaled.service start
tailscale login
以下是 clash 配置文件:
dns:
...
nameserver-policy:
"*.tailscale.io": 8.8.8.8
proxies:
- { name: tailscale, type: socks5, server: 127.0.0.1, port: 41099}
...
rules:
...
- 'IP-CIDR,100.64.0.0/10,tailscale,no-resolve'
- 'DOMAIN-SUFFIX,tailscale.com,DIRECT'
- 'DOMAIN-SUFFIX,tailscale.io,DIRECT'
按照上面流程下来是成功过一次,但重启之后怎么都成功不了。