CTLLO 发表于 2022-1-28 01:23

openwrt使用frp进行内网

本帖最后由 CTLLO 于 2022-1-28 01:51 编辑

这个也是用来备忘的,以及是避坑指南!!!

说实话网上的教程千篇一律,但是只说其然没说所以然,你懵懵逼逼就跟教程来走,到头来却不知道他是什么意思。
但是不可否认有些教程,还是写的很好的,比如下面两篇:
使用frp搭建内网穿透
FRP内网穿透实现远程桌面/访问内网web教程(基于Linux和win)
为什么要搞这个frp内网穿透呢?
那当然是学习,不对,搞错了,那当然是冲着它的高性能及支持 TCP、KCP 以及 Websocket 等多种协议去的,正好手上有一台闲置的云服务器,就思考一下今天弄一下frp的内网穿透。



以下的内容很多都是基于上面两个贴,总结下就三大点:
1、服务器上配置Frp,并挂在后台运行
2、客户端上配置Frp,并挂在后台运行
3、打开服务器相应的防火墙端口


架构选错了会报错,如果有两行报错的话,那么你的版本就选错了。
我的openwrt报了一次错:
./frpc: line 1: ELFnot found
./frpc: line 2: syntax error: unexpected "("
如果你也遇到这种情况,那就先查清楚你用的哪一种架构,用arch命令来查询。




Frp的安装包,是服务端和客户端文件,都放在了一个包里,如果你需要服务端(frps),那你就把客户端(frpc)的有关文件删除即可,如果你需要客户端,同理可得。
Frp开发者的github仓库:https://github.com/fatedier/frp
Frp安装包:https://github.com/fatedier/frp/releases/


我的旧电脑以及阿里云的服务器都是x86,所以我选择用frp_0.39.0_linux_amd64.tar.gz,然后云服务器我用的系统是centos7.3,然后两边电脑都:
wget https://github.com/fatedier/frp/ ... _linux_amd64.tar.gz
然后解压压缩包:
tar zxvf frp_0.39.0_linux_amd64.tar.gz


客户端删除:frps、frps.ini、frps_full.ini文件
服务端删除:frpc、frpc.ini、frpc_full.ini文件


然后解释一下frp的,服务端是frps这个可执行文件,然后frps.ini是这个可执行文件的配置,frps_full.ini是frps.ini的参考文件,告诉你全部参数有什么,可以自己去配置,客户端与服务端类似。
如何配置请看上面那两个教程,服务端要先配置,客户端要后配置,然后防火墙还要打开相应的端口,最终看内网穿透成功没有。
比如我要让我的openwrt内网穿透的话:


服务端的配置

# frps的监听端口
bind_port = 7000
# token密码设置
token =密码


客户端的配置

server_addr = 云服务器的公网ip
server_port = 7000
token=有设token填没有就不填


type = tcp
local_ip = openwrt的登录地址
local_port = 80
remote_port = 8080

另外服务端,有一个可以查看,frp连了多少线路的数据面板,那两个教程都有教,我就不多说了,我是成功跑通了的,用服务器的公网IP+刚才映8080端口,成功访问到了我的openwrt,优点访问速度快,缺点云服务器比较贵。



















siduhanbing 发表于 2022-1-28 14:06

技术贴,收藏了

onge94 发表于 2022-2-24 17:41

踢一脚,需要可以随时找到

Lemoonade 发表于 2022-11-10 16:56

感谢,看了这么多教程还是你的清楚

aming.ou 发表于 2023-2-3 18:17

留个档,以后备用,继续学习,感谢

BL1ACH 发表于 2023-9-13 22:31

马克,请问我家里两根网线,联通有公网V4V6移动只有V6,并且联通网买了域名弄好了DDNS,怎么外网访问联通同时也能访问自动?

CTLLO 发表于 2023-12-29 18:36

新版本用toml教程在,https://www.bilibili.com/read/cv28822553/?spm_id_from=333.999.0.0
页: [1]
查看完整版本: openwrt使用frp进行内网