公司有一个业务场景,需要利用分布在全国各地的一些手机作为代理服务器
拿到这任务的我是一脸懵逼的,这tm都行。。。
不过这让我让我想到之前用的内网穿透 frp
内网穿透大致原理可看我之前文章
下载frp 和linux amd64位的包
Releases · fatedier/frp · GitHub
上传到公网服务器解压
frps.init 配置如下
[common]
#服务端口
bind_port = 7000
bind_addr = 0.0.0.0
privilege_token = frp
启动frps
./frps -c frps.ini
启动成功日志如下
2021/07/28 17:49:45 [I] [root.go:200] frps uses config file: frps.ini
2021/07/28 17:49:45 [I] [service.go:192] frps tcp listen on 0.0.0.0:7000
2021/07/28 17:49:45 [I] [service.go:235] http service listen on 0.0.0.0:6001
2021/07/28 17:49:45 [I] [root.go:209] frps started successfully
此时需要下载 `frp_android` 的apk
GitHub - mainfunx/frpc_android: frpc_android 最新版本0.39.1
然后添加配置文件
[common]
server_addr = 118.33.22.188
server_port = 7000
auto_token = frp
[http_proxy]
type = tcp
remote_port = 6003
# 代理插件
plugin = http_proxy
然后右下角按钮启动
这时查看公网服务器日志看到变化成功即可
## 验证
这样就OK了
如果要实现多个客户端需要只需要修改安卓客户端配置文件即可
[common]
server_addr = 118.33.22.188
server_port = 7000
auto_token = frp
# 配置名必须要不一样
[http_proxy_1]
type = tcp
#端口也得改
remote_port = 6004
# 代理插件
plugin = http_proxy
# 遗憾
1. 这个虽然简单方便,但是需要一台公网服务器,不适合个人用户
2. 不是高度匿名,访问速度也一般
个人用户或者要高速的可以尝试