NaiveSocks is an all-in-one networking tool operating at the transport layer.
It can serve as proxy server/client, port forwarder, DNS server/client, HTTP file server and more...
- Interactive CLI
- Configuration file using TOML
- Supported protocols
- 'direct' (in/out)
- 'socks5' (in/out)
- 'http' (in/out)
- 'tlssni' (in)
- 'ss' (in/out)
- 'naive' (in/out)
- Multiplexing (for 0-RTT handshake) and optional inversed multiplexing (for bandwidth)
- Optional compression
- 'dns' - simple DNS server (UDP) and client (UDP/DoH)
- 'router'
- ABP Filter support
- Auto download ABP Filters from URL
- Web server
- "Virtual host" / path rules support
- 'webfile' - Static website / file server
- 'webauth' - Basic HTTP authentication
- 'webcon' - Web console
- Linux
- Async socket implementation using epoll
- 'tproxy' (in) - Transparent proxy support
- Android
- UI: Status / Adapters / Connections / Log / Console
- Simple text configuration editor
- VpnService implementation using tun2socks
- Configuration management UI
- Windows
- UI: Connections / Log / Console
- Systray
- Configuration management UI
- UDP support
- 'direct'
- 'socks5'
- 'naive'
Download from GitHub Releases or Latest build on Appveyor
Run NaiveSocks.exe
in NaiveSocks_net45.zip/tar.gz
or NaiveSocks_SingleFile.exe
.
Run run.sh
or run.bat
in NaiveSocks_dotnetcore.zip/tar.gz
.
Install NaiveSocksAndroid.apk
and run.
docker run -it -v ./naivesocks.tml:/app/naivesocks.tml hex0011/naivesocks
See NaiveSocks/naivesocks-example.tml
NaiveSvrLib
: HTTP server implementation and socket helpers
NaiveZip
: A simple archiver that can bundle .NET Framework apps into a single excutable.
Nett
: A customized fork of the TOML library Nett