vscode远程隧道功能通过微软中继服务,实现免配置、免公网IP、免ssh的跨网络远程开发。只需目标机运行VSCode并登录微软账户,即可生成唯一隧道ID和链接,任意设备扫码或输入ID即可安全接入,适用于家庭设备、离线测试机及团队协作等场景。

VSCode 的远程隧道(Remote Tunnels)功能,本质是让你用浏览器或本地 VSCode 客户端,安全、免配置地连接到任意一台能联网的机器(比如家里的 mac、树莓派、甚至公司旧笔记本),无需公网 IP、不用配 SSH、不碰路由器端口转发。
它解决了什么实际问题
传统远程开发常卡在环境上:家里电脑没公网 IP,公司电脑不能外网访问,学校服务器只允许内网 SSH,或者你只想临时调试一下某台闲置设备——这些场景下 Remote Tunnels 直接绕过网络限制,靠微软中继服务建立加密通道。
- 你在咖啡馆用笔记本打开 VSCode,连上家里树莓派的代码目录写 python 脚本
- 客户给了一台离线测试机,你装好 VSCode Server 后扫码登录,立刻获得完整编辑体验
- 团队新成员不会配 SSH,你发一个链接,他点开就能进你的开发环境
怎么开启和使用(三步到位)
前提是目标机器已安装 VSCode(桌面版,非 Web 版),且能访问互联网。
- 第一步:在目标机器上打开 VSCode → 左下角点击“>”图标 → 选择“Turn on Remote Tunnels” → 登录 microsoft 账户(个人或工作账号均可)
- 第二步:VSCode 自动分配一个唯一隧道 ID(如 github123),并生成二维码和访问链接(形如
https://vscode.dev/tunnel/github123) - 第三步:用任意设备打开该链接,或在另一台 VSCode 中按
Ctrl+Shift+P(Win/linux) /Cmd+Shift+P(Mac)→ 输入 “Tunnel: Connect to Tunnel…” → 粘贴 ID 或扫码
关键细节和注意事项
Remote Tunnels 不是魔法,理解边界才能用得稳:
- 目标机器必须保持 VSCode 桌面客户端运行(后台即可),关闭窗口不影响,但彻底退出进程会断连
- 默认只开放当前工作区;想访问整个文件系统,启动时加参数
--enable-proposed-api vscode.remote-tunnel(高级需求) - 扩展行为与本地一致,但部分依赖系统命令行的扩展(如某些 Git 图形化工具)可能受限于目标机 PATH 环境
- 微软官方说明明确:隧道流量经微软中继节点,适合开发调试,不建议传输敏感生产数据或大量二进制文件
和 Remote-SSH、Codespaces 的区别在哪
一句话定位:
- Remote-SSH:需要你有 SSH 服务、密钥、网络可达性,适合已有运维基础的场景
- Codespaces:完全云端虚拟机,资源由 github 提供,适合快速启动标准化环境
- Remote Tunnels:轻量级“即连即用”,核心价值是把任意本地机器变成可远程接入的开发节点,零网络改造成本
基本上就这些。不需要服务器、不改防火墙、不记 IP 和端口,只要 VSCode 在跑,你就有了一个随时可用的远程开发入口。