Tailscale+rdp远程连接电脑
Tailscale + RDP 实现全平台超低延迟远程办公
🛠️ 为什么选择 Tailscale?
Tailscale 是一种基于 WireGuard® 协议的虚拟组网工具。它能将分布在不同网络环境下的设备(家里的 PC、公司电脑、云服务器、手机)汇聚到同一个虚拟局域网中。
优势对比
同类组网方案:
| 特性 | Tailscale (推荐) | ZeroTier |
|---|---|---|
| 上手难度 | 极简。支持 Google/GitHub 一键登录。 | 一般。需手动创建网络 ID 并授权设备。 |
| 底层技术 | 基于 WireGuard,安全性极高,延迟极低。 | 自研协议,成熟稳定。 |
| 穿透能力 | 极强。针对复杂 NAT 进行了深度优化。 | 较强。但在严苛防火墙下略逊一筹。 |
| 打洞成功率 | 配合 IPv6 几乎 100% 直连。 | 高,但配置略显繁琐。 |
很多用户习惯使用向日葵、ToDesk 等“开箱即用”的软件。虽然它们上手快,但在深度办公场景下,Tailscale + RDP 的组合拥有无可比拟的优势。
| 维度 | 原生 RDP (+ Tailscale) | 向日葵 / ToDesk / TeamViewer |
|---|---|---|
| 画面渲染 | 指令级渲染。传输的是绘图指令,文字清晰,窗口拖动丝滑。 | 视频级压缩。本质是录屏传输,文字边缘易发糊,高分辨率下带宽压力大。 |
| 流畅度 | P2P 直连。流量走内网隧道,无中转瓶颈,无带宽限制。 | 依赖厂商服务器。免费版常有限速、排队或因服务器波动导致卡顿。 |
| 系统集成 | 真·分身体验。支持本地磁盘映射、剪贴板同步、多显示器扩展、音频重定向。 | 有限映射。剪贴板常失效,磁盘传输需插件,多屏支持较差。 |
| 隐私安全 | 点对点加密。流量只在你的设备间传输,不经过第三方,无泄露风险。 | 云端中转。数据须经过厂商服务器,历史上多次发生过大规模安全泄露漏洞。 |
| 成本 | 完全免费。无限速、无广告、不弹窗。 | 商业限制。免费版画质受限,功能常需付费订阅,偶有“检测到商业行为”。 |
核心特点
- 零配置组网:无需公网 IP,无需设置防火墙端口转发,开箱即用。
- P2P 直连:流量不经服务器转发(除非打洞失败),延迟仅取决于物理距离。
- 金融级安全:端到端加密,支持自动密钥轮换及精细化 ACL 访问控制。
- 个人免费:个人用户支持多达 100 台 设备,完全满足日常需求。
第一阶段:搭建虚拟局域网 (Tailscale)
1. 被控端配置 (家/公司电脑)
- 安装:前往 Tailscale 官网 下载并安装 Windows 客户端。
- 登录:点击任务栏图标,使用 GitHub/Microsoft 账号授权。
- 开启无人值守(关键):
- 右键图标 ->
Preferences-> 勾选 Run Unattended。 - 作用:确保电脑重启后,即使没人登录系统,Tailscale 也会自动联网。
- 右键图标 ->
- 记录 IP:点击图标即可查看分配的
100.x.x.x内部 IP。
2. 控制端配置 (随身笔记本)
- 安装 Tailscale 并登录 同一个 账号。
- 确保列表显示被控端为
Connected状态(绿灯)。
第二阶段:配置 Windows 远程桌面 (RDP)
1. 系统设置
- 进入
设置->系统->远程桌面,打开 启用远程桌面 开关。 - 勾选 要求设备使用网络级别身份验证 (NLA) 连接(安全性更高)。
2. 账户与凭据优化(防坑指南)
注意:RDP 不支持空密码账户。
-
确认本地用户名:
按下 Win + R,输入 cmd,执行 whoami。记录 \ 后的名字(如 ZhangSan)。
-
设置非空密码:
若无密码,在 CMD 执行:net user 你的用户名 你的新密码。
-
解除 Windows Hello 限制(重要):
进入 设置 -> 账户 -> 登录选项,关闭 “为了提高安全性,仅允许对此设备上的 Microsoft 账户使用 Windows Hello 登录”。
如果不关,使用密码登录 RDP 可能会提示密码错误。
第三阶段:发起远程连接
1. 桌面端操作 (Windows)
- 按
Win + R,输入mstsc。 - 计算机:填写被控端的 Tailscale IP (如
100.123.45.67)。 - 输入凭据:
- 用户名:使用
.\用户名格式(例如.\ZhangSan)。 - 提示:
.\的作用是强制验证本地账户,避免由于控制端登录了微软账号导致的冲突。
- 用户名:使用
- 保存设置:点击“显示选项” -> “另存为”,方便下次一键双击连接。
2. 移动端操作 (iOS/Android)
- 搜索并下载 “Windows App” (原 RD Client)。
- 添加电脑 -> 输入 Tailscale IP -> 配置用户账户即可。
第四阶段:硬件与电源管理 (7x24h 在线)
为确保远程连接长久稳定,请务必完成以下三项设置:
- BIOS 防断电设置:
- 进入 BIOS,找到
AC Recovery或After Power Loss。 - 将其设为 Power On (通电自动开机)。
- 进入 BIOS,找到
- 系统电源管理:
- 控制面板 -> 电源选项 -> 更改计算机睡眠时间。
- 使计算机进入睡眠状态:设为 从不。
- 显示器/显卡欺骗:
- Windows 远程桌面需要检测到显示输出。若拔掉显示器连接线,可能会导致分辨率受限或黑屏。
- 建议:插一个 “HDMI 显卡欺骗器”(几块钱),模拟显示器在线。
🛠️ 故障排查 (Troubleshooting)
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 凭据无效/拒绝访问 | 用户名错误或 Hello 限制 | 使用 .\用户名 格式;关闭被控端的 Hello 强力登录。 |
| 连接后黑屏/分辨率低 | 显卡未检测到负载 | 连接显示器或使用 HDMI 欺骗器。 |
| Tailscale 离线 | 被控端进入了休眠 | 检查电源选项,确保设置为“从不睡眠”。 |
| 连接卡顿/延迟高 | 处于中继模式 (Relay) | 执行 tailscale status 检查是否为 active; direct。若显示 relay,检查校园网/企业网是否封锁了 UDP。 |
💡 建议操作习惯:
结束远程时,不要在远程窗口里点击“关机”。建议按下 Win + L 锁屏后,直接点击顶部工具栏的 叉号 [X] 退出。
废弃方案-MAC读取v6地址进行访问
比较麻烦,偷懒了,这里只写了一半,后续可能不会更新
方案一大致流程:
- 米家电源开机。
- 等待 1 分钟(让小主机完成 Windows 启动并联网)。
- Lucky 自动运行脚本:此时 NAS 发现小主机上线,更新 DDNS。
- 域名生效:你通过域名连接。
方案二:本地运行脚本,通过MAC地址读取v6地址并存储在粘贴板上,用户通过ipv6进行直接访问
方案一:
需要用lucky的端口转发
把设置的ipv6地址绑定到域名上

#!/bin/sh
# 1. 填入你刚才获取并转换后的 MAC 地址TARGET_MAC="设备mac地址"
# 2. 尝试唤醒邻居表(如果你是通过 Wi-Fi 连的,通常网卡叫 eth0 或 wlan0,不确定就直接执行下一行)ping6 -c 1 -W 1 ff02::1%eth0 > /dev/null 2>&1
# 3. 获取 IPv6TARGET_IPV6=$(ip -6 neigh | grep -i "$TARGET_MAC" | grep -v '^fe80' | grep -v 'FAILED' | awk '{print $1}' | head -n 1)
# 4. 输出echo "$TARGET_IPV6"Windows 系统默认开启了 IPv6 隐私扩展(Privacy Extensions)。
- 为什么会有“临时 IPv6 地址”?
为了保护用户的隐私,避免用户在互联网上活动时其设备被追踪,Windows 会根据随机算法生成一个或多个“临时地址”用于访问网页。
- 临时地址:主要用于发起公网访问(如刷网页、下视频),它的后缀会定期变化(通常 24 小时更换一次)。
- 固定地址(公网地址):通常包含基于网卡硬件生成的固定后缀,用于接收外部连接(如 RDP 远程桌面)。
- 为什么这对你的 RDP 很有害?
如果你在 Lucky 脚本中抓到的是临时地址:
-
域名解析会频繁失效:当 Windows 认为旧的临时地址“过期”并弃用它时,你的域名指向的就是一个死地址。
-
连接稳定性差:虽然地址还在,但 Windows 可能会限制外部通过即将弃用的临时地址建立长连接。
-
如何解决?(三步彻底搞定)
你必须强制 Windows 使用固定的 EUI-64 地址,这样 Lucky 抓到的 IP 才会永久不变。
第一步:禁用随机标识符
在小主机 CMD(管理员)执行:
DOS
netsh interface ipv6 set global randomizeidentifiers=disabled这会让你的 IPv6 后缀根据 MAC 地址生成,不再随机。
第二步:禁用临时地址功能
在小主机 CMD(管理员)执行:
DOS
netsh interface ipv6 set privacy state=disabled这会告诉 Windows 不要再生成那些乱七八糟的临时 IP。
第三步:重启网络
执行完后,重启小主机或插拔网线。此时在 CMD 输入 ipconfig,你应该只会看到一个 IPv6 地址(除了本地链接地址外),它的后缀将永远固定。
既然你的小主机已经通过 Lucky 脚本成功获取了固定的 IPv6 地址,并且域名已经绑定成功,剩下的就是如何在远程终端上发起连接了。
使用 IPv6 进行 RDP 连接主要分为两种情况:直接使用地址连接或使用域名连接。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
凛w的后花园