Skip to content

wuwenyao/rsnova

 
 

Repository files navigation

RSnova: Private Proxy Solution & Network Troubleshooting Tool.

Build Status License GitHub release (latest by date) GitHub last commit
Deploy

Features

  • Multiplexing
    • All proxy connections running over N persist proxy channel connections
  • Simple PAC(Proxy Auto Config)
  • Multiple Ciphers support
    • Chacha20Poly1305
    • AES128
  • HTTP/Socks4/Socks5 Proxy
    • Local client running as HTTP/Socks4/Socks5 Proxy
  • Transparent TCP Proxy
    • Transparent tcp proxy implementation
  • Low-memory Environments Support
    • Use 10MB RSS memory at client/server side

Usage

./target/debug/rsnova -h
rsnova 0.1.0
yinqiwen<[email protected]>
Private proxy solution & network troubleshooting tool.

USAGE:
    rsnova [OPTIONS]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -c, --config <FILE>    Sets a custom config file [default: ./rsnova.toml]

Client Side

./rsnova -c ./client.toml

client.toml

[log]
logtostderr = true
level = "info"
logdir = "./"

[[tunnel]]
listen = "127.0.0.1:48100"
pac=[{host = ".*", channel = "rmux"}]

[[channel]]
# name of current channel
name = "rmux"
# host & port of server
url = "127.0.0.1:48101"
ping_interval_sec = 10
conns_per_host = 5
max_alive_mins = 40
# cipher to communicate with server
cipher = {key="abcdefg", method = "chacha20poly1305"}

Server Side

./rsnova -c ./server.toml

server.toml

[log]
logtostderr = true
level = "info"
logdir = "./"


[[tunnel]]
# listen address of tunnel server
listen = "rmux://127.0.0.1:48101"
# pac rule to relay traffic, 'direct' is special channel which relay direct to remote target server
pac=[{host = ".*", channel = "direct"}]
cipher = {key="abcdefg", method = "chacha20poly1305"}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 98.5%
  • Other 1.5%