使用ngrox进行内网穿透(window版)
一、概念
先说什么是内网穿透
我们在日常开发或者利用互联网进行通信的时候,往往不是直接使用真实ip去进行网络通信,而是借助“NAT”技术使用内网的虚拟ip间接与外部进行通信,但是网络地址转换(Network Address Translation,NAT)机制的问题在于,NAT设备自动屏蔽了非内网主机主动发起的连接,也就是说,从外网发往内网的数据包将被NAT设备丢弃,这使得位于不同NAT设备之后的主机之间无法直接交换信息。这一方面保护了内网主机免于来自外部网络的攻击,另一方面也为P2P通信带来了一定困难。
内网穿透,也即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。
二、使用ngrox进行内网穿透
1. 进入ngrox官网 https://ngrok.com

2. 点击右上角的Login进行登录,可以使用GitHub账号登录
3. 根据自己的系统下载ngrox,window默认下载64位版本

4. 下载完毕后进行解压,随后通过cmd命令进入到文件的目录下
window系统执行如下命令
ngrok authtoken 你的token

5. 使用idea快速创建一个spring web项目
controller代码如下:
package com.xiaoming.ngrox.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class NgroxController {
@RequestMapping("/hello")
public String Hello(){
return "Hello Ngrox~";
}
}
启动后,本地浏览器输入localhost:8989/hello 即可访问
(这里的话自己设置了端口为8989,一般默认是8080)

6. 使用ngrox暴露本地的8989端口
ngrox http 8989

7. 通过生成的url我们就可以通过域名的方式来访问我们的项目啦

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)