ngrok的内网穿透

本文介绍了ngrok的内网穿透用途及使用方法。可利用其搭建简易服务器和域名进行测试。给出了ngrok中国官网及客户端下载地址,详细说明了注册登录、开通隧道(包括选择服务器、填写隧道信息等)、启动隧道的步骤,实现域名加请求访问。

ngrok的内网穿透:
有什么用,可以搞一个自己的简易服务器和域名,做一些测试,那样就可以把搬的砖,搞到网上去了

  1. ngrok中国官网:https://www.ngrok.cc/ 里面有ngrok,客户端下载和配置使用说明
    ngrok客户端的下载地址:https://www.ngrok.cc/download.html

在这里插入图片描述
2.选择合适版本下载,我选择的win64的下载过后有,两个文件
在这里插入图片描述3.首先在官网 https://www.ngrok.cc/ 注册登录:
登录过后到这个界面:选择开通隧道
在这里插入图片描述
选择需要开通的服务器:
本站提供Ngrok和Frp两种服务器,两种服务器都支持http、https、tcp转发,Ngrok不支持udp转发,但是Frp支持udp的。两个服务器在使用上没有太多差别。如果是调试支付回调或者微信开发的话,Ngrok会比Frp好更多,因为可以http请求重现。
在这里插入图片描述
开通中>>>>:
在这里插入图片描述
隧道名称:可以随便填写,无关紧要只是为了一个备注
前置域名:服务器免费赠送的域名,如果这里我写的:sunny,那么,赠送的完整域名就是:sunny.free.idcfengye.com
本地端口:可以为同一个局域网内任意一台机器进行映射,只需要填对ip和端口就行,例如:192.168.1.1:80
http验证用户名:非必填项,在需要的时候填写,否则可以不填
http验证密码:非必填项,在需要的时候填写,否则可以不填
4.启动隧道:
先获得隧道id
如:在这里插入图片描述
启动隧道:
cmd 进入到 sunny.exe所在文件;
dir,然后sunny.exe clientid 隧道id,即可启动隧道:
如:
在这里插入图片描述
启动成功!
在这里插入图片描述
以前的访问就是:http://127.0.0.1:8004/ticket/test
现在就可以改为:域名/ticket/test
就可以达到同样的访问结果!
这一系列,就是注册,开通隧道,绑订指定ip、域名,启动隧道,就可以进行域名加请求访问了。

### 关于 Ngrok 内网穿透的使用教程 #### 什么是内网穿透内网穿透是一种通过特定的技术手段,使位于局域网中的设备能够被外部互联网访问的方法。对于开发者而言,这是一项非常实用的功能,尤其是在需要向他人展示本地运行的服务或者调试远程应用程序时[^1]。 #### Ngrok 的基本概念 Ngrok 是一款流行的开源工具,用于创建安全的隧道来连接本地服务与公共互联网之间的通信通道。它支持 HTTP 和 TCP 协议,并提供了一个简单的命令行界面以及图形化管理平台[^2]。 #### Linux 下安装并配置 Ngrok 以下是基于 Linux 系统环境下设置 Ngrok 的具体方法: 1. **下载二进制文件** 访问官方站点获取最新版本的压缩包后解压即可得到可执行程序。 2. **启动基础服务** 假设目标监听的是本机上的 Web 应用,默认端口号为 `80` ,那么可以通过如下方式快速建立一条通往外网的链接: ```bash ./ngrok http 80 ``` 3. **自定义域名绑定** 如果希望拥有更加个性化的 URL 地址,则可以在启动参数里加入 `-hostname` 参数指定想要使用的主机名;当然前提是该名称已经指向正确的 DNS A记录值。 ```bash ./ngrok http 80 -hostname=yourdomain.com ``` 4. **利用 Systemd 实现开机自动加载** 编辑 `/etc/systemd/system/ngrok.service` 文件内容如下所示: ```ini [Unit] Description=ngrok After=network.target [Service] ExecStart=/path/to/ngrok http 80 -hostname=yourdomain.com Restart=always [Install] WantedBy=multi-user.target ``` 接着启用并开启此服务单元: ```bash sudo systemctl daemon-reload sudo systemctl start ngrok sudo systemctl enable ngrok ``` #### 处理可能遇到的问题及其对策 - **隧道无法成功建立** 可能原因包括但不限于防火墙未允许相应端口的数据流入流出、内部网络环境特殊等原因造成断开重试等情况发生。此时应确认相关硬件设施已正确打开所需端口范围(比如常见的HTTP协议所依赖的标准端口即为80号)[^2]。 - **域名解析异常** 当发现输入设定好的地址却得不到预期响应的时候,请先尝试运用ping指令检测是否存在物理层面可达性的障碍;另外也要留意后台日志显示的状态信息是否有误配之处存在[^3]。 - **性能低下甚至超时现象频发** 考虑更改默认地理区域选项至距离较近的位置节点试试看效果如何改善。例如切换成亚洲太平洋地区(AP)作为首选项之一: ```bash ./ngrok http -region=ap 3000 ``` - **免费账户下每次重启都会改变子域名前缀部分** 对于此类困扰可通过升级成为Pro会员形式锁定专属定制URL路径从而避免反复调整带来的不便之处[^4]。 ```python import requests def test_ngrok_connection(domain='http://localhost:4040'): try: response = requests.get(f'{domain}/api/tunnels') tunnels_info = response.json() public_url = None for tunnel in tunnels_info['tunnels']: if 'public_url' in tunnel and ('https://' in tunnel['public_url']): public_url = tunnel['public_url'] break return f"Public Accessible Address is {public_url}" if public_url else "No active HTTPS tunnel found." except Exception as e: return str(e) print(test_ngrok_connection()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值