Tailscale 基础设置与连接

注册

访问 Tailscale 官网,使用 Google、Microsoft 或 GitHub 账号注册并登录

安装

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

然后会有一个网址,在浏览器中登录,然后点击 “connect”

DNS 解析

访问 Tailscale 官网,进入 “DNS” 页面,找到 “Nameservers” 部分,添加一些DNS记录,然后启用 “Override DNS servers”

然后在 “MagicDNS” 部分,点击 “Disable MagicDNS…” 按钮

配置Exit Node

如果希望通过某台服务器的ip访问整个互联网:

在出站服务器上,编辑 /etc/sysctl.conf 文件,取消注释或添加以下行:

net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1

执行 sudo sysctl -p 使其生效

之后执行:

sudo tailscale up --advertise-exit-node

然后登录 Tailscale 官网,进入 “Machines” 页面

点击出站服务器最右边的三个点,选择 “Edit route settings”,会看到一个 “Exit node” 选项,确保它被启用

Tailscale 默认使用 UDP 端口 41641,需确保防火墙允许转发流量

流量转发

在需要转发流量的服务器上使用:

sudo tailscale set --exit-node <出站服务器IP地址或主机名>

值得注意的是,一旦使用流量转发,此服务器就无法使用公网ip访问了,只能通过内网访问

你需要先ssh上配置了tailscale的服务器,然后再用tailscale的内网访问访问被转发流量的服务器

检查出口 IP 地址:

curl ip.gs

检查 DNS 解析:

dig +short google.com @8.8.8.8

检查 Tailscale 路由状态:

tailscale status

停止转发:

sudo tailscale set --exit-node=""

wsl

对于wsl,在安装的时候在 sudo tailscale up 之前,需要手动在 WSL 终端中启动 tailscaled 进程,并确保它在后台运行:

sudo tailscaled --state=/var/lib/tailscale/tailscaled.state --socket=/var/run/tailscale/tailscaled.sock &

不过下次启用 tailscale 的时候,仍然需要先用上面的命令

后记

当初配置wg的时候就出现,一旦连接上,ssh就断开。当时以为是网络配置有问题,现在看来其实没问题

因为一旦连接上,就只能用内网ip访问了

昨晚刚连上ts的时候ssh也断开了,然后服务商的vnc也连不上了,给我吓得来,最后甚至只能还原备份了