LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

手把手教你搭建FRP XTCP P2P打洞环境:告别中转,直连更快!

admin
2026年4月10日 17:12 本文热度 82

还在为FRP中转服务器的带宽和延迟烦恼吗?XTCP(P2P打洞)技术让你的客户端直连服务端,流量不再经过中转,速度更快,成本更低!

在日常开发与运维中,FRP(Fast Reverse Proxy)是解决内网穿透的利器。通常我们使用的是TCP/HTTP代理模式,所有流量都要经过frps服务端(VPS)中转。这种方式对服务器的带宽要求高,且会产生额外的网络延迟。

FRP还提供了一种更高效的XTCP (P2P) 模式。在此模式下,frps仅作为“信令服务器”,负责协助两个内网客户端(frpc)进行NAT(网络地址转换)打洞。一旦打洞成功,双方将建立点对点直连,数据不再流经服务端,实现了“加速”与“降本”的双重目标。

本文将带你在一套纯Linux模拟环境中,从零开始部署和测试FRP的XTCP模式,包括自建STUN服务器来提升打洞成功率。

一、实验拓扑与环境规划

为了模拟真实世界,我们设计了如下网络拓扑:

公网区:模拟互联网,包含FRP服务端(frps)和STUN服务器。

内网A:模拟公司或家庭内网,部署需要被访问的服务(如SSH)。

内网B:模拟另一个隔离的内网,作为访问端。

核心节点角色表:

实验版本:FRP v0.68.0 (TOML配置),兼容stunserver (STUNTMAN)。

二、环境搭建:一键脚本 vs 手动配置

为了方便实验,我们提供了一键脚本,也保留了详细的手动配置步骤,你可以根据喜好选择。

推荐:使用一键脚本

脚本位于仓库docs/scripts/frp-p2p/目录下。将所有脚本拷贝到对应主机,按顺序执行即可。

部署顺序Core-RouterGW-A&GW-BFRPS-ServerNode-ANode-B

备选:手动配置(深入理解原理)

如果你希望更深入地理解每一步,请跟随以下手动步骤。

三、核心服务端部署 (FRPS-Server)

此服务器有两个任务:运行frps作为信令,运行stunserver辅助打洞。

1. 安装并配置 frps

配置文件/usr/local/frp/frps.toml

启动服务:

2. 安装并配置 STUN 服务器 (Full模式)

FRP的XTCP打洞依赖STUN协议获取客户端NAT后的公网地址。为了最佳效果,我们部署一个支持Full模式的STUN服务器,它需要两个公网IP。

FRPS-Server的网卡上添加第二个IP(示例IP为10.10.10.11):

启动stunserver:

别忘了放行防火墙端口7000/tcp3478/udp3479/udp

四、客户端部署:服务提供端 (Node-A)

Node-A位于内网A(192.168.100.0/24),它提供了一个SSH服务(端口22)等待被访问。

配置文件/usr/local/frp/frpc.toml

五、客户端部署:服务访问端 (Node-B)

Node-B位于内网B(192.168.200.0/24),它将作为访问者,打洞连接到Node-A的SSH服务。

配置文件/usr/local/frp/frpc.toml

配置完成后,访问端(Node-B)只需连接127.0.0.1:6000,即可尝试通过P2P通道连接到Node-A的22端口。

六、网络基础:配置NAT网关 (GW-A & GW-B)

为了让内网节点能访问“公网”(10.10.10.0/24),需要配置网关的SNAT和转发规则。

以下为手动配置命令(在GW-A和GW-B上执行):

七、最终测试:SSH直连验证

在所有服务启动后,让我们来见证奇迹的时刻!

检查状态:确保FRPS-ServerNode-ANode-B上的frp进程均正常运行,日志无报错。

在Node-B上执行SSH命令

如果一切顺利,你将成功登录到Node-A!此时,流量已经通过P2P直连,不再经过FRPS-Server

验证直连:在Node-ANode-B上使用ss -tntcpdump查看连接,你会看到对端IP是对方NAT网关的公网IP(如10.10.10.200),而不是frps的IP(10.10.10.10)。

八、常见问题排查 (Troubleshooting)

九、安全提示

实验中的secretKeymetadatas.token仅为示例,正式环境请务必使用强密码

SSH的StrictHostKeyChecking=no仅用于实验,生产环境应开启主机密钥验证。

调试完毕后,请将frpstunserver的日志级别从debug调整为infowarn,避免日志过多。

结语

通过本文,你已经成功搭建了一个完整的FRP XTCP P2P打洞模拟环境,并体验了从服务端、网关到客户端的全流程配置。

XTCP模式是优化内网穿透体验的利器,尤其适合文件传输、远程桌面、数据库直连等大流量、低延迟敏感的场景。赶快动手试试吧,让你的内网服务飞驰在直连的快车道上!


阅读原文:https://mp.weixin.qq.com/s/GRMwn5-hCKSe4uyHGOYGzg


该文章在 2026/4/10 17:12:24 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved  粤ICP备13012886号-2  粤公网安备44030602007207号