#代理 #端口 #处理 #高级 #替换 #async-std #rinetd

app rsinetd

端口代理,rinetd的替代品。由于async-std使用epoll而不是select,RsInetd可能比rinetd处理更高的吞吐量。

5个版本

0.2.2 2020年10月13日
0.2.1 2020年10月12日
0.2.0 2020年10月12日
0.1.1 2020年10月12日
0.1.0 2020年10月12日

#12 in #higher

每月 24 次下载

GPL-3.0 许可证

24KB
279 行代码

RsInetd

Crates.io Build Status GitHub license

端口代理,rinetd的替代品。由于async-std使用epoll而不是select,RsInetd可能比rinetd处理更高的吞吐量。

安装

cargo install rsinetd

如何使用

RsInetd的使用类似于rinetd。我们将按照以下顺序尝试打开默认配置文件。

Unix上的默认配置文件打开顺序

  1. /etc/rsinetd.conf
  2. ./rsinetd.conf
  3. /etc/rinetd.conf
  4. ./rinetd.conf

非Unix上的默认配置文件打开顺序

  1. ./rsinetd.conf
  2. ./rinetd.conf

命令行选项

$ rsinetd -h

rsinetd 0.2.0

A port proxy, replacement of rinetd. Because async-std use epoll rather than select, RsInetd may handle higher
throughput than rinetd.

USAGE:
    rsinetd [FLAGS] [OPTIONS]

FLAGS:
    -f, --foreground    do not run in the background
    -h, --help          Prints help information
    -V, --version       Prints version information

OPTIONS:
    -c, --conf-file <FILE>    read configuration from FILE

/etc/rsinetd.conf 的示例

::          80      crates.io   80
0.0.0.0     443     crates.io   443

使用此配置文件,rsinetd将在[::]:80上监听并转发端口访问到crates.io:80,同时监听在0.0.0.0:443并转发端口访问到crates.io:443

依赖项

~9–21MB
~249K SLoC