很多人用 AI 的效率,死在了"得坐在电脑前"这件事上。
AI 跑得再快,你离开电脑,它就停了。出门开会、坐地铁、带孩子——任务中断,回来接,节奏全断。
今天,我们用 30 分钟彻底解决这件事。
Tailscale 是什么
Tailscale 是一个基于 WireGuard 的组网工具。装上之后,你的所有设备——手机、笔记本、台式机、服务器——会加入同一个私有网络,分配 100.x.x.x 的虚拟 IP,互相之间可以直接访问,就像在同一个局域网里。
核心优点:
- 不用暴露端口:不需要公网 IP,不需要配置防火墙,设备藏在 NAT 后面照样能互通
- 端对端加密:所有流量 WireGuard 加密,中间节点看不到内容
- 个人免费:最多 100 台设备,够用
最常见的用法:家里有台性能好的机器(NAS、Mac Studio、台式机),出门后用手机或笔记本直接访问,像在家里一样。
控制台里能看到所有加入 Tailnet 的设备,每台设备的虚拟 IP、在线状态、系统版本一目了然:

还能看到各设备上运行的所有服务(SSH、RDP、HTTP 等),直接复制连接命令或在浏览器里打开
Tailscale + Paseo 能玩什么
Paseo是一个 AI agent 编排平台。它在你的工作机上跑一个 daemon,然后你可以用手机、iPad、任何设备连上来控制 Claude Code、Codex、OpenCode 等 AI 工具——文件、config、MCP servers 全部留在本地,不上云。
两者结合之后:
**机器在家,人不在。**Mac Studio 开着跑 AI,你在外面掏出手机接着干,任务不停,你不用回家。
**解放注意力。**把任务丢给 AI,不用坐在电脑前盯着。想追加需求直接语音说(STT 本地跑,不过云),跑完了再回来 review。
**多设备接力。**早上 Mac Studio 开任务,出门 iPad 追加指令,晚上手机确认结果。同一个 session,跨设备无缝切换。
**多任务并行。**同时开多个 workspace,独立分支,AI 任务互不干扰,同时跑。
体验是这样的:在地铁上举起手机说一句话,家里的 AI 就开始跑了。到站时任务已经跑完,延迟 30ms,跟本地用没区别。
为什么要自建中继
传统 VPN 的问题:所有流量必须经过中央服务器中转,服务器带宽成为瓶颈,延迟高、速度慢。

Tailscale 的做法不同——优先设备间直连,中继只是保底。连接逻辑:
- 先走 DERP 中继,确保连接立即建立(100% 能通)
- 同时并行打洞,尝试找到设备间的直连路径
- 打洞成功 → 升级为直连,中继退出;打洞失败 → 一直走中继兜底

大多数家用路由器打洞成功率很高。但有两个现实问题:
**问题一:打洞不总能成功。**手机在 4G/5G 下、企业网络、运营商级 NAT,打洞会失败,只能靠中继。
**问题二:官方 DERP 节点全在国外,中国大陆没有。**一旦走中继,流量绕到香港或东京,延迟 200ms 起步,偶尔还被封。
下面这个真实案例:开始走 DERP(jp) 延迟 250-560ms,打洞成功后升级为直连降到 15ms。如果打洞一直失败,就只能一直吃这个延迟。

自建一个 DERP 节点放在国内 VPS 上,延迟掉到 30ms,稳定性也更好。这是"Tailscale + DERP"的基础用法。
如果你还用 Paseo,Paseo 的官方 relay 部署在 Cloudflare Workers,国内连同样不稳定。需要额外自建一个 paseo-relay(Paseo 的配套中继,独立项目,不是 Paseo 本身)。
两个中继各司其职:
Tailscale DERP paseo-relay
负责: 设备间组网 Paseo App ↔ daemon 控制通道
国内必须自建: 是 用 Paseo 时是
场景一:Tailscale + 自建 DERP
**适合谁:**想在外面访问家里设备,或者设备之间稳定组网,不一定要用 Paseo。
搭好之后能做什么:
- 出门用笔记本 SSH 到家里台式机,延迟 30ms
- 手机访问家里 NAS、路由器后台,不暴露任何端口
- 访问部署在家里的任意服务(Plex、Jellyfin、HomeAssistant 等)
第一步:在 VPS 上搭 DERP 节点
准备一台国内 VPS(阿里云/腾讯云轻量型,2C2G 够用),安全组放行:443(TCP)、3478(UDP)、80(TCP)。
编译 derper
# 大陆服务器必须设置代理
export GO111MODULE=on
export GOPROXY=https://goproxy.cn
git clone https://github.com/tailscale/tailscale.git
cd tailscale/cmd/derper
go build -o derper
cp ./derper /usr/local/bin/
chmod +x /usr/local/bin/derper
把 VPS 加入 Tailnet(开启 -verify-clients 需要)
curl -fsSL https://tailscale.com/install.sh | sh
tailscale up
tailscale status # 确认 VPS 出现在列表里
方式 A:有备案域名(推荐,最稳)
域名解析:relay.yourdomain.com → VPS 公网 IP
申请 SSL 证书(以 Cloudflare 托管为例):
git clone https://gitee.com/neilpang/acme.sh.git
cd acme.sh && ./acme.sh --install -m [email protected]
source ~/.bashrc
# 填写 Cloudflare API 凭据
vi ~/.acme.sh/account.conf
# CF_Token="你的Token"
# CF_Account_ID="你的AccountID"
acme.sh --issue -d relay.yourdomain.com --dns dns_cf --keylength ec-256
mkdir -p /var/lib/derper
acme.sh --install-cert -d relay.yourdomain.com --ecc \
--fullchain-file /var/lib/derper/relay.yourdomain.com.crt \
--key-file /var/lib/derper/relay.yourdomain.com.key \
--reloadcmd "systemctl restart derper"
方式 B:无域名,用 IP 运行
无备案域名用这个。derper 会自动生成自签证书,安全组改为放行自定义端口(如 9810/TCP)。
sudo mkdir -p /var/lib/derper
sudo vi /etc/systemd/system/derper.service
[Unit]
Description=Tailscale DERP Server
After=network-online.target
[Service]
Type=simple
User=root
WorkingDirectory=/var/lib/derper
ExecStart=/usr/local/bin/derper \
-hostname=你的VPS公网IP \
-a=:9810 \
-stun \
-stun-port=3478 \
-http-port=-1 \
-certmode=manual \
-certdir=/var/lib/derper \
-verify-clients \
-socket=/var/run/tailscale/tailscaled.sock
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
获取证书指纹(方式 B 配置 derpMap 需要):
openssl x509 -in /var/lib/derper/你的VPS公网IP.crt -noout -fingerprint -sha256
# 输出类似:SHA256 Fingerprint=39c6db53804bc0992...
**非备案域名的坑:**国内 VPS + 未备案域名 + 443 端口,电信等运营商会注入 RST 切断 WebSocket。症状是节点在线但连不上。碰到这种情况换方式 B,用非标准端口。
第二步:把自建节点注册到 Tailnet
登录 Tailscale 控制台 → Edit ACLs → 加入 derpMap:
方式 A(域名):
{
"derpMap": {
"OmitDefaultRegions": false,
"Regions": {
"900": {
"RegionID": 900,
"RegionCode": "cn-custom",
"RegionName": "我的国内中继",
"Nodes": [{
"Name": "1",
"RegionID": 900,
"HostName": "relay.yourdomain.com",
"DERPPort": 443,
"STUNPort": 3478
}]
}
}
}
}
方式 B(IP):
{
"derpMap": {
"OmitDefaultRegions": false,
"Regions": {
"900": {
"RegionID": 900,
"RegionCode": "cn-custom",
"RegionName": "我的国内中继",
"Nodes": [{
"Name": "1",
"RegionID": 900,
"HostName": "你的VPS公网IP",
"DERPPort": 9810,
"STUNPort": 3478,
"CertName": "你的VPS公网IP",
"InsecureForTests": true
}]
}
}
}
}
保存后验证:
tailscale netcheck
# 看到自建节点出现,延迟 30ms 左右
tailscale status
# direct = 直连,relay "cn-custom" = 走了你的国内中继
到这里,Tailscale + 自建 DERP 就搭好了。出门在外访问家里任何设备,延迟稳定在 30ms 左右。
真实效果——tailscale status 显示 mac-studio 走自建"nanjing"中继,ping 稳定在 33ms:

如果打洞成功则会显示 direct,直连更快:

场景二:Tailscale + DERP + Paseo + paseo-relay
**适合谁:**在场景一的基础上,还想用手机/iPad 远程控制 Claude Code 等 AI 工具。
整体架构:

第三步:在工作机上安装 Paseo
工作机是那台跑 AI 的机器(Mac、Linux 台式机均可)。

或者直接下载桌面应用,daemon 自动启动更省事。
npm install -g @getpaseo/cli
查工作机的 Tailscale IP:
tailscale ip -4
# 输出类似:100.x.y.z
配置 Paseo 监听 Tailscale IP(默认只监听本机,手机访问不到):
编辑 ~/.paseo/config.json(没有就新建):
{
"daemon": {
"listen": "100.x.y.z:6767"
},
"allowedHosts": [
"100.x.y.z",
"100.x.y.z:6767"
],
"cors": {
"allowedOrigins": [
"http://100.x.y.z:6767"
]
}
}
把 100.x.y.z 换成实际 Tailscale IP。不要写 0.0.0.0,否则公共 WiFi 下所有人都能访问你的 daemon。
启动:
paseo
# 第一次启动会打印二维码,用手机 Paseo App 扫码配对
第四步:在 VPS 上部署 paseo-relay
paseo-relay 是独立项目(zenghongtu/paseo-relay),专门给 Paseo 的控制通道做中继。它只转发加密字节,自己看不到内容。国内不部署的话走 Paseo 官方 relay(Cloudflare Workers),连接会不稳定。
VPS 安全组放行 8411/TCP。
Docker 一行起(推荐):
docker run -d --restart=always -p 8411:8411 ghcr.io/zenghongtu/paseo-relay:latest
或者 systemd:
curl -L https://github.com/zenghongtu/paseo-relay/releases/latest/download/paseo-relay-v0.3.0-linux-amd64.tar.gz | tar xz
mv paseo-relay /usr/local/bin/ && chmod +x /usr/local/bin/paseo-relay
sudo vi /etc/systemd/system/paseo-relay.service
[Unit]
Description=Paseo Relay
After=network.target
[Service]
ExecStart=/usr/local/bin/paseo-relay --addr :8411 --log-format json
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
在 Paseo App 里指定自建 relay:
Paseo App → Settings → Relay → 填入 http://你的VPS公网IP:8411,保存。
第五步:手机连接
- 手机装 Tailscale,同账号登录,加入 Tailnet
- 手机装 Paseo(iOS / Android 均有)
- Paseo App → Settings → 扫描工作机终端的二维码,或手动填 100.x.y.z:6767
- 连上后能看到工作机上所有 Agent,开始控制

端口汇总

避坑
-verify-clients 必须加:不加的话知道你 IP 的人都能用你的带宽,搭配 -socket=/var/run/tailscale/tailscaled.sock 一起用。
工作机关机 = Agent 断线:这套是"远程控制本地跑",工作机必须开着。要 7×24 可用,把 Paseo daemon 跑在长期在线的 Linux 服务器上。
OmitDefaultRegions 别轻易改成 true:保留官方节点作为最终保底,自建节点出问题还有退路。
体验
搭完之后:在地铁上举起手机说一句话,家里 Mac Studio 上的 AI 就开始跑了。语音 STT 本地识别,不过云。坐着刷几条推文,抬头看 Paseo 的 timeline,任务已经跑完。
到站下车,打开另一个 workspace,另一个 AI 在跑另一个分支。两个任务并行,互不干扰。
延迟稳定在 30ms 左右,这是自建国内 DERP 的功劳。文件全程在自己机器上,Tailscale 端对端加密,paseo-relay 只转密文看不到内容。
人在哪里都行,AI 在家跑就够了。
这期之后,你的一人公司有了
- 001 — 20 分钟注册域名
- 002 — GitHub Pages 建站
- 003 — 人在国内开美国银行卡
- 004 — 终身免费 Oracle VPS:4 核 24G,从申请到跑起来
- 005 — 全球免费的前后端部署平台
- [006 — 给 AI 装上腿,人在地铁 AI 在家跑] 本篇
下一期,我们继续完善这套一人公司基础设施。
**mousepotato(土豆哥) | 美国计算机全奖博士 | 硅谷 11 年技术管理 | AI · OPC · 产品 | X **@iluciddreaming
关注我,获取 AI 前沿、技术、管理、产品、英语和硅谷生活见闻。

