7个版本
0.1.6 | 2023年3月31日 |
---|---|
0.1.5 | 2023年3月15日 |
0.1.3 | 2022年12月20日 |
#9 在 #udp-client
165 每月下载量
在 2 crates 中使用
6KB
52 行
MPROXY: 多播网络分发器和代理
在网络中传输数据。
关于
该仓库包括四个包:正向代理、反向代理、UDP客户端和UDP服务器。代理允许TCP和UDP之间的转换,因此可以将这些块组合在一起以实现与现有网络的完全互操作性。
主要特性是与UDP多播兼容,用于中间路由和反向代理,使得在复杂的点对点或多对多数据流中实现简单的组通信变得简单,从而实现可扩展的反向代理。这些包可以通过命令行运行或作为库包含。
- 简单的完整网络栈
- 同时发送、代理、反向代理和接收多个端点
- 快速
- 可在5分钟内部署
- 500+ Mbps读取/传输/写入速度(UDP)
- 最小化
- 无配置、日志或缓存
- 内存占用小,编译的二进制文件大小约为350KB
- 线程之间无共享资源
- 利用UDP的优点
- 简单的流聚合
- 性能良好的代理和反向代理
- UDP多播使得反向代理无状态、可扩展
快速入门
从简单的客户端/服务器网络开始。使用cargo安装命令行工具,并在端口9920上启动UDP监听服务器。
cargo install mproxy-client mproxy-server
mproxy-server --listen-addr "localhost:9920" --path "streamoutput.log" --tee
然后从客户端向服务器发送一些字节。路径选项"-"告诉客户端从stdin读取输入。也可以使用文件路径、描述符或句柄。
mproxy-client --path "-" --server-addr "localhost:9920"
> Hello world!
现在你应该能在streamoutput.log
(如果使用--tee
,还会在stdout中)看到你的消息。
兼容性
- Windows/Linux/Mac
- IPv4/IPv6
- UDP
- TCP/TLS
- 通过正向和反向代理
- 通过
rustls
提供部分客户端TLS支持(需要在mproxy-forward
中启用tls
功能)
- 部分透明路由
文档
请参阅文档以获取安装和操作说明
依赖关系
~255–470KB