使用frp进行流量转发

为什么使用FRP

通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:

  • 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。
  • 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。
  • 代理组间的负载均衡。
  • 端口复用,多个服务通过同一个服务端端口暴露。
  • 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
  • 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。
  • 服务端和客户端 UI 页面。

FRP实现原理

frp 主要由客户端(frpc)和服务端(frps)组成,服务端通常部署在具有公网 IP 的机器上,客户端通常部署在需要穿透的内网服务所在的机器上内网没有公网ip,所以使用公网服务器搭载frp,内网反连公网frp,其他人需要访问内网的发起请求时,通过frp的代理到达内网

过程

1.frps frp 服务端的配置

[common]
server_port = 7000

2.frpc frp客户端,也就是你要访问的机器

配置:

server_addr是服务端的ip,server_port是服务端开放的端口,token就是token,到时候配置的代理,ip是服务器的ip,端口走的是7004,也就是remote_port

[common]
server_addr = 192.168.137.182
server_port = 7000
token = 9283eae321d
tls_enable=true

[socks5]
type = tcp
local_ip = 127.0.0.1
remote_port = 7004
plugin = socks5

指令:

frpc -c frpc_full.ini
frps -c frps.ini
Author

vague huang

Posted on

2022-07-05

Updated on

2022-09-23

Licensed under

Comments