内网穿透本质是让外网设备能访问内网中没有公网 IP 的设备,核心是通过一台有公网 IP 的 “中间服务器” 搭建数据转发通道。
一、入门简介:先搞懂 “是什么” 和 “为什么用”
1. 核心定义
内网穿透(也叫 NAT 穿透),是在没有公网 IP 的情况下,通过技术手段让外网(比如手机流量、其他网络的电脑)能访问到内网里的设备(比如家里的 NAS、公司的服务器、本地搭建的网站)。
2. 解决的核心问题
-
内网设备没有公网 IP:大部分家庭 / 企业网络的设备,只有路由器分配的内网 IP(如 192.168.1.100),外网无法直接定位。
-
绕过路由器 NAT 限制:路由器的 NAT 功能会屏蔽外网主动向内网发起的连接,导致外网找不到内网设备。
-
无需复杂网络配置:不用手动设置路由器端口映射、申请公网 IP,对新手更友好。
二、核心原理:3 步看懂数据怎么 “穿” 过去
内网穿透的核心是 “中间服务器”(也叫中继服务器),它有固定的公网 IP,负责连接内网设备和外网设备,具体流程分 3 步:
1. 内网客户端主动 “握手”
在内网设备上安装穿透工具的 “客户端”(比如 frp 的 frpc),客户端会主动向 “中间服务器” 发起连接,并保持这个连接不中断。
这一步是关键:因为 NAT 只禁止外网主动连内网,不禁止内网主动连外网,所以用 “主动连接” 绕过限制。
2. 中间服务器记录 “映射关系”
中间服务器收到内网客户端的连接后,会记录一组 “映射关系”:把内网设备的 “内网 IP + 端口”(如 192.168.1.100:8080)和中间服务器的 “公网 IP + 端口”(如 1.2.3.4:8000)绑定。
3. 外网设备通过中间服务器转发数据
当外网设备想访问内网设备时,会先连接中间服务器的 “公网 IP + 端口”(1.2.3.4:8000),中间服务器再根据之前记录的映射关系,把数据转发给对应的内网设备,实现双向通信。
关键技术点:端口映射
整个过程的核心是 “端口映射”,即中间服务器用自己的一个公网端口,对应内网设备的一个端口,所有发往这个公网端口的数据,都会被转发到内网端口上。
三、常用工具对比:新手怎么选?
不同工具的复杂度和适用场景不同,新手可以优先选开箱即用的工具。
| 工具名称 | 类型(开源/商业) | 核心特点 | 使用场景 |
| frp | 开源免费 | 轻量、高度可定制,支持 TCP/HTTP/HTTPS 等协议 | 技术爱好者、开发者,需自己搭建或找免费中转服务器 |
| Ngrok | 开源(核心) + 商业 | 易用性强,官网提供免费中转(有域名限制) | 临时测试(如开发调试、演示内网项目) |
| 花生壳 | 商业为主 | 国内服务商(贝锐),支持穿透 NAS / 摄像头等 | 小白用户、需要稳定服务的个人(如远程访问 NAS) |
| FastTunnel | 开源免费 | 基于.NET 开发,支持多协议,配置相对简单 | 熟悉.NET 环境的开发者,或需要轻量化穿透的场景 |
1004

被折叠的 条评论
为什么被折叠?



