Windows 电脑远程访问,ZeroTier 实现内网穿透完整指南(含原理讲解)
🧭 一、目标场景说明
想从安卓移动端远程到Windows电脑
实现如下效果:
- 家中 Windows 电脑开机联网;
- 安卓手机/平板在外地,只要联网就能远程控制电脑桌面;
- 不需要公网 IP,不用设置端口映射;
- 免费、安全、稳定。
使用工具:ZeroTier + RDP 客户端
二、ZeroTier 操作步骤详解
1. 注册 ZeroTier 账号
- 打开官网:https://my.zerotier.com
- 免费注册并登录
- 点击【Create A Network】创建虚拟网络
- 记下生成的 Network ID(例如:
8056c2e21c000001
)
新注册用户会先让你注册网络,并至少要给 2 台设备安装 ZeroTier 客户端并连接上才允许管理网络。
✅ 2. 安装客户端
📱 安卓手机/平板
- 应用商店搜索「ZeroTier One」,下载安装
- 打开后点击“Add Network”,输入 Network ID(扫码也行)
- 勾选 Route all traffic through …(所有流量都走这里的 ZeroTier 的意思)
- 勾选 Network DNS
- 点击
Add
并点选 “开关” 连接
iPhone/iPad操作也差不多
🖥️ Windows 电脑
- 下载地址:https://www.zerotier.com/download/
- 安装好后在托盘图标右键 → Join New Network → 输入 Network ID
- 点击 Connect 连接,并且给这个网络勾选 Allow DNS Configuration
3. 授权设备加入网络
登录 https://my.zerotier.com,找到你的网络:
- 在设备列表中找到手机和电脑
- 勾选左侧「Auth」授权它们加入网络 “Authorize”
- 稍等几秒,ZeroTier 会给每台设备分配虚拟 IP(如
10.x.x.x
)
4. 测试
在 Windows 和 安卓(termux)上,互 Ping 对方的 ZeroTier 分配的网络地址,看是否通了。
注:客户端要配 DNS,否则无法访问该网络下其他设备,最简单的方法就是使用 ZeroTier 的 DNS。
5. 配置 Windows 远程桌面(RDP)
- 设置 → 系统 → 远程桌面 → 启用远程桌面,并选择那个用户可用于远程
- 记住电脑用户名,并设置强密码
- 确认 Windows 防火墙允许 3389 端口(远程桌面默认端口)
我 Windows 默认是不设密码的,用户重置密码后 RDP 一直无法连上,最后发现是要重启才能生效。
6. 安卓设备连接电脑
推荐 App:Microsoft Remote Desktop(微软官方,免费)
操作步骤:
- 打开 App → 添加新连接
- 主机地址:填写 ZeroTier 分配给电脑的虚拟 IP(如
10.147.17.5
) - 账号密码填写 Windows 本地账号即可
- 点击连接,成功访问 Windows 桌面!
任何设备都一样,只要加入到 ZeroTier 网络就可以实现互通。
三、ZeroTier 原理解释
可以把 ZeroTier 想象成“看不见的网线”,把手机和电脑连接在一个虚拟局域网中。
ZeroTier 背后主要做了三件事:
步骤 | 描述 |
---|---|
注册连接 | 每台设备连接 ZeroTier 控制器,注册身份与位置 |
分配虚拟 IP | 控制器为设备分配虚拟内网地址(如 10.x.x.x) |
尝试 P2P 直连 | ZeroTier 尝试“打洞”,让两台设备实现点对点(P2P)连接,失败则中继转发 |
什么是“打洞”?为什么它很关键?
- 家用路由器或运营商的 NAT 会“挡住”外部访问;
- 但设备自己主动往外发一个包,NAT 会记住这个路径;
- 如果双方同时主动发包,就能“在 NAT 上打个洞”,允许互相访问;
- 这叫做 NAT 穿透,能实现高效低延迟的点对点通信。
为什么国内网络环境下很难成功打洞?
虽然 ZeroTier 很努力,但在中国 P2P 失败率较高,原因如下:
问题 | 描述 |
---|---|
CGNAT | 很多运营商不给你公网 IP,多个用户共享 NAT,打洞失败 |
对称 NAT | 出口端口随机,不允许打洞重用,几乎无法建立点对点连接 |
UDP 被封 | 部分校园、公司或家庭网络禁止 UDP,ZeroTier/Tailscale 无法通信 |
IPv6 不普及 | IPv6 可避开 NAT,但大多数国内网络并未启用 IPv6 |
这时候,ZeroTier 会自动改为“中继模式”,流量走官方中转服务器,虽然速度略慢但依然稳定可用。
说白了国内网络,就是设备出口出去时映射出去了,但回来却不能映射回相同的 IP 和 端口,并且跟据访问不同的网络,出口还可能回不一样。
五、进阶:路由器加入 ZeroTier,实现全网互通
如果你把 ZeroTier 安装在家里的路由器(OpenWrt、软路由等),并成功加入网络:
- 那么 局域网中所有设备(如 NAS、打印机、电视盒子)都能访问 ZeroTier 虚拟网络内的设备;
- 也就是说:手机远程访问家中任意设备变得轻而易举,无需每台设备单独配置。
六、ZeroTier 的安全性和免费政策
免费账户限制(截至目前 20250805)
- 每个账号最多可免费创建 3 个网络
- 每个网络最多可授权 10 台设备
- 所有连接都通过加密隧道(ZeroTier 自研加密)
- 对小型团队或个人用户已经绰绰有余
安全性说明
-
通信全程加密(类似 VPN 隧道);
-
控制面托管在 ZeroTier 官方,适合普通用户但不适合高度敏感场景;
-
如果你特别在意控制权,可以选择:
- 自建 ZeroTier 控制器(难度较高)
- 或切换到 WireGuard(详见下一节)
七、说说缺点(重要)
前面技术原理、实现方式、功能以及有点都说完了,这里我讲讲缺点:
速度很慢
速度很慢,这一点是其他人没分享或者没说的。
两台设备连接无法做到 P2P ,并不是 ZeroTier 不支持,而是国内网络不可以,所以流量都必须经过 ZeroTier 服务器再出去。
安全:即使端对端是加密的(证书之类),但证书以及颁发机构都是 ZeroTier 颁发的,并且流量也是由它中转,对外部的来说是加密的,但对 ZeroTier 服务器来说,却可以是明文解密,所以有一定的安全风险(企业不建议使用)
并且 ZeroTier 是美国的,国内可能没有节点,即使有也会限制用户的流量速度,延迟比较高。
操作不人性化
如果是简单操作,对专业性和使用功能不那么强个人用户来说,那还是很容易的操作的。
但是,我在操作过程中发现了一个问题:
就是删掉
一个 ZeroTier 网络设备后,就再也加不进来这个网络了。
删除这个设备的 C:\\ProgramData\\zerotier
和 C:\\Program Files (x86)\\zerotier
都不行,删掉重装也不行。
ZeroTier 控制台就是识别不了这个设备。
说是 ZeroTier 加进来的设备都会有个 ID,因为这个ID相同就判断为删除了,已删除设备没这个选项,刷新也没看到未注册设备有它,研究了半天就是加不进来。
另外就是功能非常非常少(可能商业版本多?),页面十分简单简洁,好像是 2011 还是 2015 年的项目,后面闭源了。
总体来说,感受下来不太像 25 年还在维护的产品,只能说能用,但肯定用得不会太爽。
但如果设备之间 从国内打通国外 或者 国外打通国内 来看,这就是一个很好的免费方案了。
七、下一篇预告:WireGuard vs ZeroTier 简略对比
对比项 | ZeroTier | WireGuard |
---|---|---|
部署难度 | 零配置,无需服务器 | 需配置服务器、公私钥、路由表 |
打洞能力 | 有,国内成功率低 | 无,需自己解决穿透(如 FRP、TUN) |
协议性能 | 较好,自研协议 | 非常高效,现代极简加密架构 |
控制权 | 控制面托管在 ZeroTier 官方 | 完全自建,100% 本地控制 |
中继依赖 | 自动中继(失败走 relay) | 无 relay,靠你自己配置 |
是否适合国内 | 一般,打洞受限多 | 配合 Tailscale/headscale 效果极佳 |
后面搞下 WireGuard 内网穿透并更新过程,ZeroTier 是美国的,WireGuard 是俄罗斯的,说不定 WireGuard 会带来意想不到的用户体验。
总结
步骤 | 说明 |
---|---|
安装配置 ZeroTier | 简单,跨平台支持安卓/Windows/Mac/Linux |
配置远程桌面 + RDP 客户端 | 常规 Windows 操作 |
设置 DNS | 关键,影响连通性 |
国内打洞是否成功 | 失败几率高,通常走中继 |
安全性与控制权 | 对普通用户安全足够,核心控制权归官方 |
推荐人群 | 个人用户、小团队、远程控制场景皆适用 |
ZeroTier 提供了一种“极低门槛 + 多平台兼容 + 安全加密”的远程连接方式,是很多用户首选的内网穿透工具。