200字
frp内网穿透详解
2026-05-17
2026-05-19

你是否苦恼于家中的nas无法在外访问?想建游戏服务器却不想购买高昂费用的云服务器?想要用家里面的设备搭建网站?如果你有这些方面的需求,那么这篇文章可以帮助到你,这篇文章将从原理,以及搭建,一步一步的教会你。

1.原理介绍

frp (Fast Reverse Proxy) 是一种高性能的反向代理应用,其核心原理是通过一个具有公网 IP 的中转节点,在处于内网的客户端与外网用户之间建立一条通信隧道

a.为什么需要 frp?

通常情况下,内网设备(如家里的 NAS、树莓派)由于没有公网 IP,且处于防火墙或路由器(NAT)之后,外网用户无法直接发起访问。frp 解决了这种“看得见外网,外网看不见你”的困境。

b.核心组件

frp 采用 C/S(客户端/服务端)架构:

frps (frp server):部署在具有公网 IP 的服务器上,负责监听连接并转发流量。

frpc (frp client):部署在内网设备上,负责主动向公网服务器发起连接,建立隧道。

c.工作原理流程

frp 实现穿透的过程可以分为以下四个主要步骤:

  • 建立控制通道:内网的 frpc 启动后,会主动连接公网的 frps,并告知自己需要映射的端口(例如将内网的 22 端口映射到公网的 6000 端口)。双方会保持一个长连接作为控制链路。

  • 外网请求接入:当外网用户访问公网服务器的指定端口(如 公网IP:6000)时,frps 会收到该连接请求。

  • 触发数据传输frps 通过之前的控制通道通知 frpc:“有人要访问你,请建立一条新的数据通道”。

  • 流量转发(中转模式)frpc 收到通知后,立即连接内网服务(如 SSH),同时向 frps 发起一个新的数据连接。随后,frps 将外网用户的请求流量通过这条隧道实时转发给 frpcfrpc 再传给内网服务。

d.传输模式分类

frp 支持多种工作模式,以适应不同的网络环境:

  • TCP/UDP 打洞(常用):最基础的流量转发,支持多种协议。

  • HTTP/HTTPS 代理:专为 Web 服务设计,支持通过域名分发请求(多域名共享一个 80 端口)。

  • P2P 穿透 (xtcp):尝试在内网与外网用户之间直接建立连接,流量不经过中转服务器,从而节省服务器带宽并降低延迟。

图解:

2.正式部署

学会原理之后,下一步就准备着手开始实践了。首先你需要一个云服务器,可前往“阿里云”“腾讯云”等云服务商购买,可选择香港等境外地区可免备案,核心和内存尽可能按最小买,但是带宽尽量买大一点的;其次你需要一个域名,同样前往云服务商进行选择购买;最后你需要一个能联网的设备,比如说家用nas。

这里云服务器和nas设备均用Debian系统演示。

首先你需要在云服务器终端输入以下命令。

frp内网穿透详解
作者
站长
发表于
2026-05-17

评论