本页目录
Tailscale 操作手册
Tailscale 是基于 WireGuard 的 mesh VPN。核心概念: tailnet (你的私有网络), node (每个设备), DERP (中继服务器, 无法直连时用), MagicDNS (自动 .ts.net 域名), ACL (访问控制)。
状态查看
|
基本操作
# 启停
# 常用 up 参数
# 切换账号
# 重新认证 (key 过期后)
子网路由 (Subnet Router)
# 在作为网关的节点上:
# 在 Admin Console 中批准路由 (一次性):
# Machines → 找到该节点 → Edit route settings → 勾选子网并 Approve
# 在客户端启用:
# 查看当前接受的路由
|
出口节点 (Exit Node)
# 在出口节点 (通常是 VPS 或有公网出口的主机) 上:
# 在 Admin Console 批准后, 客户端:
# 临时切换出口节点
DERP 服务器
# 查看当前 DERP 使用情况
# 自建 DERP (derper)
# 启动: derper -hostname derp.liz6.com -certmode manual -certdir /etc/ssl/
# 端口: 8443 (TLS, 公网暴露), 3478 (STUN, UDP)
# Tailscale Admin Console → Access Controls 添加自定义 DERP 地图:
# "derpMap": { "Regions": { "901": { ... } } }
# DERP 调试
# 如果流量走了 DERP (非直连), 延迟会明显变高
ACL 管理 (Admin Console)
# ACL 在 admin console 的 Access Controls 页面管理 (JSON)
# 核心概念:
# - acls: 谁可以访问谁/什么端口
# - groups: 用户分组
# - hosts: 限制节点接受哪些来源
# - derpMap: 自定义 DERP 服务器
# 示例 ACL:
# "acls": [
# {"action": "accept", "src": ["group:admin"], "dst": ["*:*"]},
# {"action": "accept", "src": ["group:dev"], "dst": ["tag:server:22,443"]},
# ]
# 测试 ACL 未生效时:
排障
# 1. 检查服务状态
# 2. 检查连通性
# 如果显示 "via DERP(...)" 则走了中继, 延迟高
# 3. WireGuard 层面
# 4. 防火墙
# Tailscale 自己打洞会用到 STUN (UDP 3478) 和 DERP (TCP 443/8443)
# 如果直连不通, 检查 UDP 是否被 block
# 5. NAT 问题
# "hard NAT" 最难直连, 可能需要 DERP 或手动打洞
# 6. 重置
# 7. MagicDNS 不生效
# 检查是否启用: tailscale debug prefs | grep -i dns
# MagicDNS 基础域名: <hostname>.<tailnet>.ts.net