fast-socks5 0.1.1

Fast SOCKS5 client/server implementation written in Rust async/.await (with async-std)
Documentation

SOCKS5 client/server library using async/.await

Features

  • Built on-top of async-std library
  • Ultra lightweight and scalable
  • No system dependencies
  • Cross-platform
  • Authentication methods:
    • No-Auth method
    • Username/Password auth method
    • Custom auth methods can be implemented via the Authentication Trait
  • All SOCKS5 errors (replies) should be mapped
  • AsyncRead + AsyncWrite traits are implemented on Socks5Stream
  • IPv4, IPv6, and Domains types are supported
  • Config helper for Socks5Server
  • Helpers to run a Socks5Server à la "async-std's TcpStream"-like via incoming.next().await
  • Examples come with real cases commands scenarios

Examples

Please check ./examples/ directory.

# Run client
cargo run --example client

# Run server
cargo run --example server

TODO

  • Tests have to be implemented
  • Better Rust doc

Inspired by

Thanks to all these SOCKS5 projects

Further consideration