#proxy #tokio #tcp #networking #async-networking #proxy-server #command-line-utilities

app tcpproxy-rs

跨平台异步多客户端TCP代理;优秀的tokio示例

10个版本

0.7.5 2024年4月7日
0.7.4 2024年4月7日
0.6.0 2024年4月7日
0.5.2 2024年4月7日

#1274网络编程

MIT 许可证

15KB
245

tcpproxy-rs

一个简单、跨平台的、适用于老式RS2/JS5的多客户端TCP代理

tcpproxy-rs 是一个用Rust编写的跨平台、多客户端TCP代理,旨在解决那些“一次性”任务,在这些任务中,您通常花费更多的时间安装代理服务器和配置大量配置文件和选项,而不是真正使用它。

tcpproxy-rs 完全是异步的,基于 tokio 异步运行时。它是为了作为使用Rust futures和异步框架的双向异步网络代码的示例而编写的,并且故意保持易于理解。代码定期更新以利用新的tokio功能和最佳实践(如果它们发生变化)。

使用方法

tcpproxy-rs 是一个命令行应用程序。每个您希望代理数据到/从的远程端点,都应该启动一个 tcpproxy-rs 实例。所有配置都通过命令行参数完成,符合本项目的宗旨。

tcpproxy-rs VERSION REMOTE_HOST:PORT [-b BIND_ADDR] [-l LOCAL_PORT]

Options:
    -b, --bind BIND_ADDR
                        The address on which to listen for incoming requests,
                        defaulting to localhost.
    -l, --local-port LOCAL_PORT
                        The local port to which tcpproxy should bind to
                        listening for requests, randomly chosen otherwise.
    -d, --debug         Enables debug mode w/ connection logging.

在可能的情况下,自动提供合理的默认参数。

安装

tcpproxy-rs 通过 cargo,Rust包管理器提供。安装步骤如下

cargo install tcpproxy-rs

依赖项

~4–13MB
~126K SLoC