[TailScale]-打通你的局域网服务器到公网电脑

24 阅读8分钟

为什么要使用TailScale

最近我买了一台小型主机到家里做linux服务器使用,部署我的一些自用应用。但是我的服务器只在局域网可以访问,在其他地方不能访问。所以我需要选择一种方案来让我可以访问到这台主机。

远程方案选择

想要在公司或外面随时访问家里的这台小主机,本质上需要解决一个核心问题:在没有固定公网 IP 的家庭网络环境下,实现安全、稳定的内网穿透与跨网互联

方案类别代表工具/方式核心原理资金成本配置难度传输速度安全性典型痛点/缺点
公网 IP + DDNS运营商宽带 + 路由器端口映射宽带公网 IP 绑定动态域名,路由器映射服务端口免费中等极快(取决于家庭宽带上行)极低(端口直面公网扫描与爆破)1. 公网 IPv4 极难申请,纯 IPv6 兼容性差;
2. 暴露端口风险极高,易被黑客扫描。
传统反向代理FRP、NPS、Ngrok租赁公网 VPS 搭建服务端,内网机器主动建立隧道收费(需按月租用云服务器)较高受限(受便宜 VPS 的 1~5Mbps 小带宽瓶颈限制)中等1. 需持续付费租用 VPS;
2. 传输大文件或跑监控时带宽极慢;
3. 需自行维护服务器与证书。
云厂商隧道Cloudflare Tunnel安装 cloudflared,通过 Cloudflare 边缘节点代理入站免费中等一般(国内访问延迟较高)较高1. 跨境网络波动大,国内访问偶有断连或高延迟;
2. 偏向 Web/HTTP 服务,原生 SSH/TCP 体验较繁琐。
Mesh VPN (虚拟局域网)Tailscale、ZeroTier基于现代加密协议,多设备组成私有专属虚拟局域网个人免费极低(开箱即用)(绝大部分直连打洞,走 P2P 带宽)极高(端口完全不对公网开放,端到端高强度加密)极少数严格 NAT 网络下打洞失败需依赖中继(可自建 DERP 优化)。

为什么最终选择了 Tailscale?

最终决定采用 Tailscale,主要基于以下几点核心原因:

1. 真正的“零配置”体验,开箱即用

只需使用同一账号登录(支持 GitHub、Google、Microsoft 等第三方认证),所有设备就会自动加入属于自己的私有网络(Tailnet),并分配固定的虚拟 IP,整个过程无需复杂配置。

2. NAT 穿透能力出色,支持点对点(P2P)直连

  • 不消耗第三方服务器带宽:Tailscale 具备业内顶尖的 NAT 打洞穿透能力。在绝大多数网络环境下,外部设备与家里的小主机可以直接建立 P2P 点对点直连,流量不经第三方服务器中转。

  • 跑满家庭上行带宽:无论是远程拉取代码、传输文件,还是查看大流量服务,速度体验都远非几兆带宽的便宜 VPS 可比。

3. 安全性高:无需暴露任何端口到公网

  • 小主机不需要在路由器上做任何端口映射,也不需要公网 IP。

  • 只有登录了我账号的授权设备才能互联,对公网完全不可见,从根本上隔绝了恶意扫描和端口暴力破解的风险。

  • 所有数据流量均采用 WireGuard 的现代密码学体系进行端到端加密。

4. 强大的进阶能力满足后续折腾需求

  • MagicDNS:开启后可以直接用主机名访问(如 ssh my-home-server),无需记忆冗长的 IP 地址。

  • Subnet Router(子网路由):在小主机上配置一条命令作为子网网关后,在外面无需在路由器的其他设备上安装客户端,就能直接访问家庭局域网内的路由器后台、NAS 或智能家居设备。

  • 全平台支持:覆盖 Linux、macOS、Windows、iOS、Android 以及 Docker/NAS 环境,移动端与 PC 端无缝切换。

结论:对于个人自建家庭服务器而言,Tailscale 在易用性安全性网络性能之间达到了极其出色的平衡,免去了云服务器的租金成本与暴露公网端口的安全风险,是目前搭建个人私有网络极具性价比和实用价值的选择。

TailScale还可以做什么?

它的核心价值是把你在不同地方的所有设备打通成一个专属的、安全的虚拟大局域网

  • 可以把小主机改成nas服务器,使用tailscale可以直接连接手机和nas服务器
  • 把小主机改为路由中枢,操控家里内网的设备(打印机、摄像头等)
  • 跨设备极速传文件(Taildrop),TailScale自带软件,用于互传大文件。
  • 临时把服务分享给朋友,FunnelShare等自带服务用于临时分享

怎么使用?

整个配置过程分为四步:注册账号、Linux 小主机安装、常用客户端连接

第一步:注册 Tailscale 账号

  1. 打开 Tailscale 官网,点击右上角的 Get Started

  2. 推荐直接使用 GitHubGoogleMicrosoft 账号一键授权登录(免去记密码的麻烦)。

  3. 登录后会自动进入控制台(Admin Console),你的专属私有虚拟网(Tailnet)就已经创建好了。

第二步:在 Linux 小主机上安装与登录

登录家里的小主机(通过本地 SSH 或屏幕直连),按以下步骤执行:

1. 一键脚本安装 Tailscale

Tailscale 官方提供了极简的跨发行版自动化安装脚本,适用于 Ubuntu、Debian、CentOS 等主流系统:

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

2. 启动并完成设备认证

sudo tailscale up

# 终端会打印出一个专属的认证链接,类似:

To authenticate, visit:

https://login.tailscale.com/a/xxxxxx

3. 完成绑定

  • 复制该链接到浏览器中打开;
  • 登录同一个账号,点击 Connect 授权;
  • 授权成功后,终端会提示 Success.,表示小主机已正式加入你的虚拟网络。
  • 可以在终端输入 tailscale ip -4 查看小主机分配到的 100.x.x.x 私有静态 IP。

第三步:在其他常用设备上连接测试

为了能在外面远程访问这台小主机,我们需要在随身携带的设备上也装上客户端:

电脑端(Mac / Windows)

  1. 访问 Tailscale 官网下载对应系统的安装包(或 Mac App Store 下载);
  2. 打开客户端,点击登录,使用同一个账号授权;
  3. 连上后,打开电脑终端直接测试远程连接(将 IP 替换为你小主机的 Tailscale IP)

服务器无法回传/接收认证状态,Auth Key 解决

小主机有时候访问服务器会超时卡顿,可以使用Auth Key(密钥)直接静默登录

  1. 打开浏览器进入 Tailscale Keys 管理页面
  2. 点击 Generate auth key... (生成授权密钥)。
  3. 选项保持默认即可(建议勾选 Reusable 可重复使用,方便以后用),点击 Generate key
  4. 复制生成的密钥(类似 tskey-auth-kXXXXX-XXXXXX)。
  5. 回到 Debian 服务器终端,执行以下命令(替换为你复制的 key):
sudo tailscale up --auth-key=tskey-auth-xxxxxx --reset

执行完后,服务器会直接认证成功并上线,不再需要点任何链接!

常用命令

功能分类操作说明命令示例备注
状态查询查看当前节点与所有设备在线状态tailscale status列出 Tailnet 内所有机器的 IP 与系统
状态查询查看本机的 Tailscale IPv4 地址tailscale ip -4输出一个 100.x.x.x 的私有固定 IP
网络测试测试与其他节点的延迟与连接方式tailscale ping <目标机器名或IP>会显示是 direct(P2P直连)还是 relay/DERP(中继)
网络测试检查当前设备的网络与打洞能力tailscale netcheck查看 NAT 类型、映射端口及 DERP 延迟情况
服务控制启动并连接 Tailnetsudo tailscale up首次运行会生成网页认证登录链接
服务控制断开 Tailscale 连接sudo tailscale down临时脱离虚拟网,不影响本机其他上网
高级路由通告局域网网段(开启子网路由)sudo tailscale up --advertise-routes=192.168.1.0/24需先在系统开启 IPv4 转发,并在网页端审批通过
高级路由将当前设备声明为出口节点(Exit Node)sudo tailscale up --advertise-exit-node允许外部设备借用该主机的网络流量作为出口上网
高级路由允许本机使用其他节点通告的子网/路由sudo tailscale up --accept-routesLinux 端若想访问其他机器分享的局域网需带上此参数
文件传输跨设备极速发送文件(Taildrop)tailscale file cp <文件名> <目标机器名>:类似跨系统的 AirDrop,无需第三方工具
文件传输接收并保存其他设备发来的文件tailscale file get <保存目录>拉取其他机器通过 Taildrop 推送过来的文件
账号权限登出当前绑定的账号tailscale logout清除本机授权信息,重新绑定时需再次登录
版本更新检查并升级 Tailscale 客户端sudo tailscale update自动检查官方新版本并完成在线升级