一行命令搞定内网穿透
一行命令搞定内网穿透
一款开源免费的内网穿透工具:localtunnel ,基于 nodejs 实现,无需修改 DNS 和防火墙设置,方便快捷的将内网服务暴露到外网,为开发人员、测试人员以及需要分享本地项目的人提供实时的公网访问方式,以便于测试和共享!
功能特性
- 一行命令启动,无需复杂的网络设置
- 基于 Node.js 的内网穿透工具
- 分配一个独特的可公开访问的 URL
- 轻松将内网设备的指定端口暴露到公网
- 无需修改 DNS 和防火墙设置
- 所有隧道均使用安全 https 协议
- 代理中转所有请求,确保内网服务的可远程访问性
- 使用 API 测试 webhook
- 在浏览器中测试内网服务
快速体验
localtunnel 的原理与 ngrok 相似,当我们访问内网服务时,首先去向 localtunnel 的服务器发起请求,与本地端口创建一条临时隧道,当用户请求公网域名时,会自动通过隧道拿到我们本地服务的数据返回给用户。
准备环境
- nodejs
- npm
0、安装nodejs,直接点击安装即可,注意选择安装的目录,后面安装 Localtunnel会使用的
Nodejs的安装以及配置
1、安装nodejs
node-v12.16.1-x64.msi 点击安装,注意以下步骤
本文设置nodejs的安装的路径:D:\soft\nodejs
继续点击next,选中Add to PATH ,旁边的英文告诉我们会把 环境变量 给我们配置好
当然也可以只选择 Node.js runtime,根据自己需要选择安装
下面如果勾选的话,会自动安装一些必要的环境,也可以不勾选
后续一直安装即可
安装完成以后,输入win+r 输入 cmd ,
输入:node -v 查看版本
输入:npm -v 查看ndejs的包管理器的版本
输入:npm list -global 查看ndejs的包管理器的本地仓库位置
查看配置信息:npm config list
下面配置一些信息
1、在nodejs的安装路径:D:\soft\nodejs下新建node_global,node_cache这两个文件夹用于存放nodejs的本地仓库和缓存
2、修改配置文件
设置本地仓库,输入:
npm config set prefix "D:\soft\nodejs\node_global"
设置本地缓存,输入
npm config set cache "D:\soft\nodejs\node_cache"
设置本地镜像加速,输入
npm config set registry=http://registry.npm.taobao.org
查看配置信息:npm config list
下面就可以使用npm 进行安装需要的包了,如:npm install xxx -g ,-g就是安装到global文件夹下。
如果有错误提示,可以切换至管理员权限,再进行安装需要的包即可
配置前,默认配置
配置后
设置本地仓库,输入:
npm config set prefix "D:\soft\nodejs\node_global"
设置本地缓存,输入
npm config set cache "D:\soft\nodejs\node_cache"
设置本地镜像加速,输入
npm config set registry=http://registry.npm.taobao.org
输入:npm install -g cnpm
安装以后结果:
输入:cnpm -v 查看版本
如果出现cnpm不是内部或者外部命令提示,也不是可运行的程序或批处理文件 提示信息时
解决如下,修改系统环境变量
win+i 选择 系统,关于, 系统信息,高级系统设置,高级,环境变量,用户变量,双击Path,点击新建 ,浏览,选择 本地设置的仓库目录("D:\soft\nodejs\node_global")即可,再回到cmd界面输入的cnpm -v 即可,
如果还是不行那可能是版本不一致的问题,也就是说npm的版本和当前安装的cnpm的版本不一致,
解决如下:cmd 输入 npm uninstall cnpm -g ,再输入 npm -v 查看npm版本,再输入 npm install -g cnpm@6.0.0 --registry=https://registry.npm.taobao.org 在输入cnpm -v 就可以了
下面安装 Localtunnel
1、安装
# 全局安装 Localtunnel 以便在任何地方访问
npm install -g localtunnel
2、设置 Localtunnel(lt 简称)
客户端的环境变量,即配置环境变量
# Localtunnel 的实际安装目录,安装到下面目录(安装完成之后会提示安装到了哪个目录),目录会有个lt.cmd,即
lt.cmd 所在目录几位要设置的环境变量
重新管理员权限打开cmd,输入如下命令
lt --port 8089,注意 8089 是指定要通过外网访问的应用程序的端口,[注意]
:这只是一种映射,需要开启你本地的tomcat或apache并对应端口才能使用访问。
3、启动客户端
# 绑定本地服务的端口号,建立临时隧道
lt --port 8089
如下图所示,服务端会分配一个唯一的可公开访问的公网地址:
访问网址 https://every-tires-care.loca.lt
测试网址 :https://two-sloths-flow.loca.lt/
接着我们就可以这个外网地址分享给其他人使用了,任何请求都将路由到本地服务。
服务端部署
如果你觉得使用官方的服务端不安全,localtunnel 也支持自托管部署,具体步骤如下:
# 克隆服务端源码
git clone git://github.com/defunctzombie/localtunnel-server.git
cd localtunnel-server# 安装服务端依赖
npm install# 启动服务端,绑定7000端口
bin/server --port 7000
在客户端映射本地端口时,指定自己的域名即可
lt --host [your domain]:7000 --port 8080
localtunnel 完全免费,旨在为内网穿透提供简单有效的解决方案,使本地服务变得全球可访问。非常适合使用浏览器测试工具(例如 browserling)或外部 API 回调服务(例如 twilio,支付回调等)。
结束语
在数字时代的浪潮中,有一群人他们不畏艰难,勇攀技术高峰,他们就是开源探索者。
他们不仅仅是技术的实践者,更是开源文化的传播者和推动者。
在开源的世界里,没有绝对的权威,只有共同的合作。
参考连接:https://www.toutiao.com/article/7349918237579788836/?app=news_article&group_id=7349918237579788836&is_new_connect=0&is_new_user=0&req_id=20240807094806E3342EBEF776835D444E&share_token=D8C6033C-729F-4DAC-A78E-303B4BC1AADC×tamp=1722995286&tt_from=weixin&use_new_style=1&utm_campaign=client_share&utm_medium=toutiao_ios&utm_source=weixin&wxshare_count=1&source=m_redirect
相关文章:

一行命令搞定内网穿透
一行命令搞定内网穿透 一款开源免费的内网穿透工具:localtunnel ,基于 nodejs 实现,无需修改 DNS 和防火墙设置,方便快捷的将内网服务暴露到外网,为开发人员、测试人员以及需要分享本地项目的人提供实时的公网访问方式…...

C语言——扫雷游戏
扫雷游戏通常是一个由方格组成的区域内进行的,其中随机分布着一定数量的地雷 。玩家的目标是通过点击方格来标记出所有地雷的位置,同时避免自己点到地雷而导致游戏失败。游戏开始时,玩家通常只能看到一部分方格,而其余的方格则需要…...
【LLM】-16-评估LLM-与标准答案的差距
目录 1、评估回答是否正确 1.1、util_zh 1.2、eval_zh 1.3、评估 2、评估生成答案与标准答案的差距 2.1、eval_zh2 2.2、评估 即使没有提供的理想答案,只要能制定一个评估标准,就可以使用一个 LLM 来评估另一个 LLM 的输出。 如果可以提供理想答…...

WeNet 2.0:更高效的端到端语音识别工具包
WeNet 2.0:更高效的端到端语音识别工具包 原文链接:[2203.15455] WeNet 2.0: More Productive End-to-End Speech Recognition Toolkit (arxiv.org) 1.摘要 WeNet是一个开源的端到端语音识别工具包,WeNet 2.0在此基础上进行了四项主要更新,…...

阿里大模型调用 = 》通义千问大语言模型
背景:简单的通过API或者SDK在线调用阿里云大模型(基于百炼平台),基于在线知识库 参考地址:安装阿里云百炼SDK_大模型服务平台百炼(Model Studio)-阿里云帮助中心 (aliyun.com) 1、获取API-KEY 当您通过API/SDK调用大模…...

idea使用free流程,2024idea免费使用
1.先到官网下载,这里选择win系统的,点击下图的.exe https://www.jetbrains.com/idea/download/?sectionwindows 2.下载好后基本上就是一直点击“下一步”到直到安装好,安装好后先打开软件后关闭退出 3.下载配配套资料 链接: https://pan.ba…...

算法_链表专题---持续更新
文章目录 前言两数相加题目要求题目解析代码如下 两两交换链表中的结点题目要求题目解析代码如下 重排链表题目要求题目解析代码如下 合并K个升序链表题目要求题目解析 K个一组翻转链表题目要求题目解析代码如下 前言 本文将记录leetcode链表算法题解,包含题目有&a…...
在Windows MFC\C++编程中,如何使用OnCopyData函数
在C中,OnCopyData 函数通常不是标准C库的一部分,而是与特定的图形用户界面(GUI)框架相关联,如Microsoft Foundation Classes (MFC) 或 Windows API 编程。在MFC应用程序中,OnCopyData 是用于处理来自其他应…...

【Qt】项目代码
main.cpp文件 argc:命令行参数个数。*argv[ ]:每一个命令行参数的内容。main的形参就是命令行参数。QApplication a(argc, argv) 编写一个Qt的图形化界面程序,一定需要QApplication对象。 widget w; 在创建项目的时候,勾选widg…...

MySQL中常用工具
MySQL自带的系统数据库 常用工具 MySQL mysqladmin mysqlbinlog mysqldump mysqlimport/source mysqlimport只能导入文本文件,不能导入sql文件...

关于儿童编程语言
青少年通常会通过Scratch或Python开始学习编程。在这两种语言中,代码的编写(或者在Scratch中是构建)方式类似于英语,这使得初学者更容易学习。Scratch的一个重要卖点是对视觉和运动感知学习者非常友好。这些代码块按颜色编码&…...

[io]进程间通信 -信号函数 —信号处理过程
sighandler_t signal(int signum, sighandler_t handler); 功能: 信号处理函数 参数: signum:要处理的信号 handler:信号处理方式 SIG_IGN:忽略信号 SIG_DFL:执行默认操作 handler:捕捉信 …...

RoboDK的插件
目录 collision-free-planner: opc-ua: collision-free-planner: RoboDK 的无碰撞规划器插件使用概率路线图 (PRM) 自动在机器人工作空间内创建无碰撞路径。 有关无碰撞规划器的更多信息,请访问我们的 文档。 生成参数无碰撞…...
List<HashMap<String, Object>>排序
如果列表中的元素类型是List<HashMap<String, Object>>,排序时需要考虑到value可能是任意类型的对象。在这种情况下,你可以针对具体的类型进行比较,或者使用Comparable接口来确保对象可以被正确比较。 示例代码 假设我们想要根据…...
【大数据】探索大数据基础知识:定义、特征与生态系统
欢迎来到我的博客,很高兴能够在这里和您见面!欢迎订阅相关专栏: 工💗重💗hao💗:野老杂谈 ⭐️ 全网最全IT互联网公司面试宝典:收集整理全网各大IT互联网公司技术、项目、HR面试真题.…...

营销材料翻译质量对销售渠道的影响
在当今的全球市场中,与不同受众进行有效沟通的能力对于企业的成功至关重要。营销材料的高质量翻译在通过销售渠道塑造客户旅程方面发挥着重要作用,影响着知名度、参与度、转化率和保留率。方法如下: 提高品牌知名度 在销售渠道的顶端&#x…...

centos7.9安装k8s 1.3
centos7.9安装k8s 1.3 k8s环境规划:初始化修改网卡配置两台服务器都执行 配置阿里yum源 安装containerd服务安装初始化k8s需要的软件包kubeadm初始化k8s集群 扩容k8s集群-添加第一个工作节点安装kubernetes网络组件-Calico测试在k8s创建pod是否可以正常访问网络和co…...

【第七节】python多线程及网络编程
目录 一、python多线程 1.1 多线程的作用 1.2 python中的 threading 模块 1.3 线程锁 二、python网络编程 2.1 通过socket访问网络 2.2 python2.x中的编码问题 2.3 python3的编码问题 一、python多线程 1.1 多线程的作用 多线程技术在计算机编程中扮演着重要的角色&a…...

Linux Shell编程--变量
前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 变量: bash作为程序设计语言和其它高级语言一样也提供使用和定义变量的功能 预定义变量、环境变量、自定义变量、位置变量 一、自定义变…...

软文写作必须掌握的技巧有哪些?
现代互联网飞速发展的时代,硬广逐渐变的效果越来越差,而软文推广已经成为网络营销的重要组成部分了,一篇好的软文往往能为你的产品、网站带来意想不到的效果。 用于做营销的软文,我们不能像写普通文章那样随意。一篇优质的软文会让…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖
在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会࿰…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...