Skip to content

手把手教你用Rust写代理, 代码已完成, 文章不定期更新

Notifications You must be signed in to change notification settings

importcjj/rust-miniproxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

miniproxy

1.39 stable终于发布啦!

使用Rust 1.39.0实现的简易代理,同时支持HTTP,HTTPS和SOCKS5协议。本项目仅用于学习交流。

如何编译

首先安装Rust,如何安装请移步官网 注意由于需要使用async/await,所以需要指定rust版本为1.39(stable)

cargo build --release

默认开启TCP加速,使用gkd-rs提供加速功能。 可在编译时使用--no-default-features关闭加速功能。

二进制文件会在项目目录的target/release文件夹下,找到两个名为minilocalminiserver的二进制文件即可。关于如何交叉编译,请自行搜索。不过我自己在macbook上交叉编译就没成功过。

如何使用

本代理分为两部分:minilocalminiserverminiserver运行于网络服务器上,minilocal运行于本地。

a. 先在服务器上部署miniserver,启动的时候会随机产生一个base64编码的密码

RUST_LOG=mini=info ./miniserver -h 0.0.0.0 -p 59999 -d

b. 然后在本地启动minilocal,需要指定server的通讯密码

RUST_LOG=mini=info ./minilocal -s "xxx.xx.xx.xx:59999" -p 9998 -P xxxxxx

c. 进行系统代理设定,代理地址为127.0.0.0:9998,或者也可以设置自动代理,PAC文件地址为http://127.0.0.1:9998/pac。本代理同时支持HTTP,HTTPS和SOCKS5协议

原理及教程

尚在编写中,文档可见docs

About

手把手教你用Rust写代理, 代码已完成, 文章不定期更新

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published