/clash

A rule-based tunnel in Go.

Primary LanguageGoGNU General Public License v3.0GPL-3.0

Clash
Clash

A rule-based tunnel in Go.

Github Actions

Features

  • Local HTTP/HTTPS/SOCKS server with authentication support
  • Shadowsocks(R), VMess, Trojan, Snell, SOCKS5, HTTP(S) outbound support
  • Built-in fake-ip DNS server that aims to minimize DNS pollution attack impact. DoH/DoT upstream supported.
  • Rules based off domains, GEOIP, IP-CIDR or process names to route packets to different destinations
  • Proxy groups allow users to implement powerful rules. Supports automatic fallback, load balancing or auto select proxy based off latency
  • Remote providers, allowing users to get proxy lists remotely instead of hardcoding in config
  • Transparent proxy: Redirect TCP and TProxy TCP/UDP with automatic route table/rule management
  • Hot-reload via the comprehensive HTTP RESTful API controller

Premium

Premium core is proprietary. You can find their release notes and pre-built binaries here.

Getting Started

Documentations are available at GitHub Wiki.

Development

If you want to build a Go application that uses Clash as a library, check out the GitHub Wiki.

Credits

License

This software is released under the GPL-3.0 license.

FOSSA Status