前言

传统 VPN 配置繁琐、需要公网 IP、依赖端口映射、面对多层 NAT 容易失效。

Tailscale = 基于 WireGuard + 自动 NAT 穿透 + Mesh 组网 + DERP 中继,实现:

  • 无公网 IP 也能全球组网

  • 设备自动互联,像局域网一样简单

  • P2P 优先,失败自动中继,永远在线

  • 全平台支持、安全、高性能、个人免费够用

本文从 安装、登录、自启、状态查看、子网路由、Exit Node、常见排查 完整实战。


一、Tailscale 核心架构(极简版)

  • Control Plane(控制平面):认证、分发节点信息、密钥、ACL

  • Data Plane(数据平面):WireGuard P2P 加密传输

  • DERP 服务器:P2P 打洞失败时自动兜底中继

  • tailscaled:后台守护进程,负责打洞、连接、维护

流量永远端到端加密,控制平面无法解密。


二、支持平台

  • Linux (x86/ARM)

  • Windows / macOS

  • Android / iOS

  • 群晖 / 威联通 NAS

  • OpenWrt / 路由器

  • Docker


三、Linux 安装与初始化(通用一键脚本)

3.1 官方一键安装(推荐)

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

自动适配:

  • Ubuntu/Debian

  • CentOS/RHEL/Fedora

  • Arch

  • Raspberry Pi

3.2 启动并登录

sudo tailscale up

会输出一个链接,复制到浏览器登录(GitHub/Google/Microsoft 均可)。

登录成功后,终端自动完成认证,无需任何配置

3.3 查看本机虚拟 IP

tailscale ip -4

示例:100.96.xxx.xxx100.64.0.0/10 段)

3.4 查看网络状态

tailscale status

显示:

  • 所有在线设备

  • 连接方式:直连 P2PDERP 中继

  • 设备名、IP、OS


四、Linux 开机自启(systemd 标准配置)

Tailscale 安装时默认自带服务,只需确保启用:

# 设置开机自启并立即运行
sudo systemctl enable --now tailscale

# 查看是否自启
systemctl is-enabled tailscale

输出 enabled 即为成功。

推荐优化后的 systemd 服务(稳定防炸)

如果需要手动创建 / 替换 /etc/systemd/system/tailscale.service

[Unit]
Description=Tailscale node agent
Documentation=https://tailscale.com/docs/
After=network-online.target
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/sbin/tailscaled \
  --state=/var/lib/tailscale/tailscaled.state \
  --socket=/run/tailscale/tailscaled.sock \
  --port=41641

Restart=on-failure
RestartSec=5
LimitNOFILE=65536
DynamicUser=no
User=root
ProtectSystem=strict
ProtectHome=read-only
PrivateTmp=yes

[Install]
WantedBy=multi-user.target

重载并重启:

sudo systemctl daemon-reload
sudo systemctl restart tailscale
sudo systemctl enable tailscale

五、常用基础命令

5.1 查看连接状态

tailscale status

5.2 查看是否 P2P 还是 DERP(重要)

tailscale ping <另一设备IP>
  • via DERP → 走中继

  • direct → P2P 直连

5.3 查看网络信息

tailscale netcheck

会显示:

  • NAT 类型

  • 端口类型

  • DERP 区域

  • 是否可以打洞

5.4 退出登录

sudo tailscale down
sudo tailscale logout

六、实战功能 1:子网路由(共享内网)

让 Tailscale 设备可以访问 服务器所在局域网(NAS、路由器、摄像头等)。

6.1 服务端开启子网转发

echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding=1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

6.2 启动时声明子网

例如家庭内网:192.168.1.0/24

sudo tailscale up --advertise-routes=192.168.1.0/24

6.3 后台管理页面启用子网路由

打开:https://login.tailscale.com/admin/machines

找到你的节点 → Edit route settings → 启用公布的子网。

其他 Tailscale 设备即可直接访问:

ping 192.168.1.1
ssh 192.168.1.100

七、实战功能 2:Exit Node(全局代理网关)

让其他设备 所有流量通过此节点出口上网(回家、翻墙、安全公共 Wi-Fi)。

7.1 服务端开启 Exit Node

sudo tailscale up --advertise-exit-node

7.2 后台启用 Exit Node

Admin → Machines → 找到节点 → 允许作为 Exit Node。

7.3 客户端使用 Exit Node

sudo tailscale up --exit-node=<节点IP或名称>

关闭:

sudo tailscale up --exit-node=''

八、查看与理解连接类型

P2P 直连(最佳)

  • 延迟低、速度满带宽、无中继

  • tailscale ping 显示 direct

DERP 中继(兜底)

  • 对称 NAT、企业网、多层 NAT 时出现

  • 安全可用,但速度受限于 DERP

  • tailscale ping 显示 via DERP(sin/toa/lax...)

Tailscale 特点:

P2P 失败 → 自动 DERP;P2P 恢复 → 自动切回,全程无感。


九、常见问题排查

9.1 一直走 DERP,无法 P2P

原因:

  • 对称 NAT(Symmetric NAT)

  • 防火墙封禁随机 UDP

  • 运营商 CGNAT

解决:

  • 光猫改桥接

  • 路由器拨号

  • 关闭对称 NAT

  • 使用 IPv6 可大幅提升 P2P 成功率

9.2 服务启动失败

journalctl -u tailscale -f

查看日志定位问题。

9.3 子网路由不通

  • 检查 sysctl 转发是否开启

  • 后台是否启用路由

  • 服务器防火墙是否允许转发

9.4 开机不自启

systemctl enable --now tailscale

十、Tailscale 优势总结(博客可直接用)

  1. 零配置:安装 → 登录 → 完成

  2. WireGuard 底层:安全、极简、高性能

  3. 全自动 NAT 穿透:无需公网 IP、端口映射

  4. Mesh 全互联:任意设备点对点

  5. DERP 自动中继:永远在线,不会失联

  6. MagicDNS:设备名直接访问

  7. ACL 细粒度权限

  8. 子网路由、Exit Node、Tailscale SSH 企业级功能免费使用


十一、适合人群

  • 异地组网、远程家庭 NAS

  • 云服务器安全运维(不暴露端口)

  • 多地点局域网打通

  • 公共 Wi‑Fi 安全上网

  • 运维 / 开发 / 极客低成本组网


结尾语

Tailscale 不是简单的 VPN,而是现代零配置虚拟局域网操作系统。它把复杂的网络技术全部封装,让普通人也能拥有专业级的全球互联能力。对于个人与小团队而言,它几乎是当前最优雅、稳定、低成本的组网方案。

文章作者: 楚少爱看雪
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 楚少爱看雪
学习 Study
喜欢就支持一下吧