A rule-based tunnel in Go.
Go to file
Dreamacro 4735f61fd1 Feature: add `disable-udp` option for all proxy group 2020-11-13 21:48:52 +08:00
.github Chore: push image to github docker registry 2020-11-10 15:19:12 +08:00
adapters Feature: add `disable-udp` option for all proxy group 2020-11-13 21:48:52 +08:00
common Fix: tunnel manager & tracker race condition (#1048) 2020-10-29 17:51:14 +08:00
component Fix: tunnel UDP race condition (#1043) 2020-10-28 21:26:50 +08:00
config Feature: add `disable-udp` option for all proxy group 2020-11-13 21:48:52 +08:00
constant Feature: add TCP TPROXY support (#1049) 2020-11-09 10:46:10 +08:00
dns Fix: missing fake-ip record should return error 2020-10-17 12:52:43 +08:00
docs Update: README.md logo and badges 2018-06-23 00:44:28 +08:00
hub Feature: add TCP TPROXY support (#1049) 2020-11-09 10:46:10 +08:00
log Chore: pass staticcheck 2020-08-25 22:19:59 +08:00
proxy Feature: add TCP TPROXY support (#1049) 2020-11-09 10:46:10 +08:00
rules Fix: PROCESS-NAME on FreeBSD 11.x (#947) 2020-09-07 17:43:34 +08:00
tunnel Fix: tunnel manager & tracker race condition (#1048) 2020-10-29 17:51:14 +08:00
.gitignore Optimization: socks UDP & fix typo (#261) 2019-08-12 14:01:32 +08:00
Dockerfile Chore: push image to github docker registry 2020-11-10 15:19:12 +08:00
LICENSE License: use GPL 3.0 2019-10-18 11:12:35 +08:00
Makefile Chore: make builds reproducible (#1006) 2020-10-08 17:54:38 +08:00
README.md Chore: README.md style fixed (#825) 2020-07-22 21:34:37 +08:00
go.mod Fix: tunnel manager & tracker race condition (#1048) 2020-10-29 17:51:14 +08:00
go.sum Fix: tunnel manager & tracker race condition (#1048) 2020-10-29 17:51:14 +08:00
main.go Chore: pass staticcheck 2020-08-25 22:19:59 +08:00

README.md

Clash
Clash

A rule-based tunnel in Go.

Github Actions

Features

  • Local HTTP/HTTPS/SOCKS server with authentication support
  • VMess, Shadowsocks, Trojan, Snell protocol support for remote connections
  • Built-in DNS server that aims to minimize DNS pollution attack impact, supports DoH/DoT upstream and fake IP.
  • Rules based off domains, GEOIP, IP CIDR or ports to forward packets to different nodes
  • Remote groups allow users to implement powerful rules. Supports automatic fallback, load balancing or auto select node based off latency
  • Remote providers, allowing users to get node lists remotely instead of hardcoding in config
  • Netfilter TCP redirecting. Deploy Clash on your Internet gateway with iptables.
  • Comprehensive HTTP RESTful API controller

Getting Started

Documentations are now moved to GitHub Wiki.

Credits

License

This software is released under the GPL-3.0 license.

FOSSA Status

TODO

  • Complementing the necessary rule operators
  • Redir proxy
  • UDP support
  • Connection manager
  • Event API