ngrok内网穿透--Windows

目录

一、ngrok内网穿透原理

二、注册 & 下载ngrok

三、安装 & 配置ngrok

四、暴露端口

五、本地管理界面


一、ngrok内网穿透原理

        1、内网穿透(NAT穿透)是指在局域网(内网)中的设备通过某种技术手段,使外部网络(如互联网)能够访问到内网中的设备或服务。例如,你在电脑上搭建了一个服务器,内网穿透后,你可以在自己的手机上访问这个服务器。

        2、ngrok内网穿透工作原理
        (1)暴露本地服务端口:在本地设备上启动ngrok客户端,并指定要暴露的本地服务端口

        (2)建立隧道:ngrok客户端与ngrok服务器建立一个持久的TCP隧道。

        (3)分配公共URL:ngrok服务器会为这个隧道分配一个唯一的公共URL,这个URL可以被外部访问。

        (4)请求转发:当外部用户访问这个公共URL时,ngrok服务器接收请求,并通过已经建立的隧道将请求转发到本地设备的指定端口。

        (5)处理请求:本地服务器接收到请求后进行处理,并生成响应。

        (6)响应返回:本地服务器将响应发送到ngrok服务器,最终由ngrok服务器返回给外部用户。

二、注册 & 下载ngrok

        1、访问ngrok官网 : https://ngrok.com/(加载时间可能会比较长,多刷新、多访问几次)

        2、注册账号,跟着流程来就好

        注意事项:

        ①使用QQ邮箱会提示注册失败,尽量使用其他邮箱,我用的是163邮箱

        ②注册成功后会给你的邮箱发送验证邮件,记得验证,不然后续会出错

       3、成功登录后,选择Setup & Installation,根据你的系统配置进行下载

        4、选择Your Authtoken获取token

三、安装 & 配置ngrok

        1、解压安装:下载的文件是一个压缩包,解压后只有一个exe文件,解压到任意位置均可。

        

        2、双击exe,在命令行中执行如下命令:

    ngrok authtoken xxx(xxx更换为你的token)

        3、执行成功后会出现类似下面的信息,ngrok会在你的用户目录下自动创建配置文件ngrok.yml,每个人的路径不一致。

    Authtoken saved to configuration file: C:\Users\Administrator\AppData\Local/ngrok/ngrok.yml

四、暴露端口

        1、在ngrok.exe的命令行中执行如下命令,这将告诉 ngrok 把本地监听在端口5000上的 HTTP 服务器暴露到互联网。

    ngrok http 5000(切换为你需要暴露的端口号)

        2、执行上述命令后可能会出现如下错误提示:
        reconnecting (failed to send authentication request: .....

        解决办法:在上述命令的基础上添加--region=eu这个参数指定了 ngrok 使用的服务器区域为欧洲(EU)。ngrok 在全球有多个数据中心,你可以选择对应区域,以减少网络延迟。执行这个命令后可能仍会出现错误提示,稍安勿躁,等待2-5min之后就可以成功连接了。如果还是失败,需要去寻找其他的解决办法。

    ngrok http 5000(切换为你需要暴露的端口号) --region=eu

        ngrok常见的区域代码:

us:美国(默认区域)
eu:欧洲
ap:亚太地区
au:澳大利亚
sa:南美洲
jp:日本
in:印度

        3、成功执行后的界面如下,红色方框内的地址是公共URL,即外部访问地址。当访问这个地址时会将请求转发到本地的5000端口。

        注意:

        (1)程序需要保持运行才能保持端口的暴露,若程序关闭,端口暴露也将停止。

        (2)每次启动,公共URL都是随机生成的,不是固定的。固定域名&暴露多个端口设置参考:内网穿透ngrok_dashborad.ngrok-CSDN博客

        各参数详解:

  • Session Statusonline, 当前会话状态为在线,隧道已经成功建立。
  • AccountXiaoZhi (Plan: Free),使用的 ngrok 账户名称为 XiaoZhi,并且使用的是免费计划(Free Plan)。
  • Version3.14.0,使用的 ngrok 版本是 3.14.0
  • RegionEurope (eu),使用的服务器区域是欧洲(eu)。
  • Latency225ms,表示从 ngrok 客户端到 ngrok 服务器的网络延迟为 225 毫秒。
  • Web Interfacehttp://127.0.0.1:4041,表示 ngrok 的本地管理界面地址,你可以在浏览器中访问这个地址来查看隧道的状态、请求日志等信息。注意,这个地址只能在运行 ngrok 的本地设备上访问。
  • Forwardinghttps://2fe2-120-40-58-193.ngrok-free.app -> http://localhost:5000,表示 ngrok 创建了一个公共 URL https://2fe2-120-40-58-193.ngrok-free.app,并将所有访问这个 URL 的请求转发到本地的 http://localhost:5000 服务器。
  • Connectionsttl opn rt1 rt5 p50 p90
    • ttl: 总连接数(Total Connections),表示自隧道启动以来的总连接数。
    • opn: 当前打开的连接数(Open Connections),表示当前正在进行的连接数。
    • rt1: 最近 1 分钟的请求速率(Requests per minute in the last 1 minute)。
    • rt5: 最近 5 分钟的请求速率(Requests per minute in the last 5 minutes)。
    • p50: 50% 请求的响应时间,以秒为单位(Response time for 50% of requests)。
    • p90: 90% 请求的响应时间,以秒为单位(Response time for 90% of requests)。

五、本地管理界面

        1、浏览器访问本地管理界面,Inspect页面相关内容如下:

        2、Status界面如下,显示了ngrok的配置信息和连接数据。

        3、【Try the new Traffic Inspector】将使用ngrok的流量检查器进行查看,这个功能可以帮助你监控和调试通过 ngrok 隧道的流量。点击将进入如下界面,成功登录ngrok后在左侧目录中也可以找到这个工具。

  • 19
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值