使用Microsoft Dev Tunnels实现内网穿透

什么是Microsoft Dev Tunnels?

开发人员隧道允许开发人员跨 Internet 安全地共享本地 Web 服务。 使你能够将本地开发环境与云服务连接,与同事共享正在进行的工作或帮助构建 Webhook。 开发隧道适用于临时测试和开发,不适用于生产工作负荷。

Microsoft Dev Tunnels的优势

  • 默认情况下安全 - 默认情况下,创建开发隧道只能使用 Microsoft、Microsoft Entra ID 或 GitHub 帐户访问。
  • 持久 URL - 根据需要保留相同的开发隧道 URL。
  • 支持多个同时端口 - 同时在单个开发隧道上托管多个端口。
  • 全局服务可用性 - 开发隧道服务全局可用。 开发隧道会自动在最近的可用区域中创建。
  • 隧道检查 - 检查熟悉的接口、浏览器 DevTools 中的开发隧道流量。

安装Microsoft Dev Tunnels

Windows环境
使用Windows 包管理器 (winget)

可以使用适用于 Windows 的 Microsoft 程序包管理器 winget 来安装和更新 devtunnel CLI。

winget install Microsoft.devtunnel

此命令默认安装最新版本,并删除同一位置的旧版本,即 %LOCALAPPDATA%\Microsoft\WinGet\Packages。 若要指定版本,请将所需版本添加到 --version <version_number> 命令。

winget upgrade Microsoft.devtunnel

使用PowerShell脚本

还可以使用 PowerShell 安装 devtunnel CLI,并运行以下命令:

Invoke-WebRequest -Uri https://aka.ms/TunnelsCliDownload/win-x64 -OutFile devtunnel.exe

.\devtunnel.exe -h

离线安装

直接下载链接:

Windows (x64) - https://aka.ms/TunnelsCliDownload/win-x64

使用以下命令运行命令 devtunnel , ./devtunnel而不是:

  1. 按 Windows 键并键入"环境变量"。
  2. 选择"编辑系统环境变量"选项。
  3. 选择"环境变量..."按钮。
  4. 在"系统变量"表中可以看到两个表,找到并选择"PATH"变量。
  5. 选择"编辑..."按钮。
  6. 此时应弹出一个窗口。 选择"新建"按钮。
  7. 键入 devtunnel.exe 文件的目录路径(目录意味着从路径中排除文件名。
  8. 若要查找目录字符串,可以导航到 PowerShell 或终端中的目录,然后键入"pwd")
  9. 在所有打开的窗口中选择"确定",然后重启命令提示符。
macOS环境
使用Homebrew

可以使用 Homebrew 来安装和更新 devtunnel CLI。 以下命令可用于或不使用 --cask。

brew install --cask devtunnel

使用脚本

curl -sL https://aka.ms/DevTunnelCliInstall | bash

离线安装

直接下载链接:

macOS (arm64) - https://aka.ms/TunnelsCliDownload/osx-arm64-zip

macOS (x64) - https://aka.ms/TunnelsCliDownload/osx-x64-zip

Linux环境
使用脚本

curl -sL https://aka.ms/DevTunnelCliInstall | bash

离线安装

直接下载链接:

Linux (x64) - https://aka.ms/TunnelsCliDownload/linux-x64

登录

若要启动开发隧道,首先需要使用 Microsoft Entra ID、Microsoft 或 GitHub 帐户登录。

devtunnel user login

主机

登录后,可以使用命令开始托管开发隧道 host 。 在以下示例中,开发隧道将:

  • 在响应发送到它的请求的端口 8080 上运行本地服务器。
  • 为 Internet 可访问的本地端口 8080 托管开发隧道。

# Start a http server on port 8080

devtunnel echo http -p 8080

# Tunnel port 8080

devtunnel host -p 8080

成功的 host 命令将类似于以下示例的内容输出到控制台。

# Start a http server on port 8080

devtunnel echo http -p 8080

# Tunnel port 8080

devtunnel host -p 8080

打印的文本包含:

  • tunnel_id - 开发隧道的 ID。
  • 公共 URL - 此示例中可用于访问开发隧道 https://<tunnel_id>.usw2.devtunnels.ms:8080/ 的 URL。
  • 检查 URL - 在此示例中,可用于检查通过开发隧道 https:/<tunnel_id>-8080-inspect.usw2.devtunnels.ms/ 发送的流量的 URL。

连接

若要连接到开发隧道,需要:

  1. 在 Web 浏览器中访问此 URL。
  2. 使用用于托管开发隧道的同一帐户登录。 默认情况下,开发隧道只能访问你。

祝贺你! 现在可以通过 Internet 访问本地服务。

使用限制

|-------------------------------------------|--------------------------|
| Resource | Limit |
| Bandwidth | 2 GB per user |
| Tunnels | 5 per user |
| Active connections | 20 per port |
| Ports | 10 per tunnel |
| HTTP request rate | 1500/min per port |
| Data transfer rate | Up to 20 MB/s per tunnel |
| Max web-forwarding HTTP request body size | 16 MB |

相关推荐
广拓科技12 小时前
微软量子芯片:开启量子计算新时代?
microsoft·量子计算
技术程序猿华锋12 小时前
OpenAI 周活用户破 4 亿,GPT-4.5 或下周发布,微软加紧扩容服务器
microsoft·chatgpt·deepseek
cen难取名1 天前
驱动开发WDK(1)-环境准备和初始程序。详细教程
驱动开发·microsoft
PXM的算法星球1 天前
java(spring boot)实现向deepseek/GPT等模型的api发送请求/多轮对话(附源码)
java·gpt·microsoft
时光追逐者1 天前
推荐几款开源免费的 .NET MAUI 组件库
microsoft·开源·c#·.net·.net core·maui
余~~185381628003 天前
矩阵碰一碰发视频的源码技术,支持OME
microsoft
※※冰馨※※3 天前
【C#】无法安装程序包“DotSpatial.Symbology 4.0.656”
windows·microsoft·c#
电手3 天前
微软宣布 Windows 11 将不再免费升级:升级需趁早
windows·microsoft
猿大师办公助手4 天前
Weboffice在线Word权限控制:限制编辑,只读、修订、禁止复制等
vue.js·chrome·microsoft·word
labview_自动化4 天前
C#功能测试
windows·microsoft·c#