A rule-based tunnel in Go.
Go to file
goomadao 33a6579a3a
Feature: add ssr support (#805)
* Refactor ssr stream cipher to expose iv and key

References:
https://github.com/Dreamacro/go-shadowsocks2
https://github.com/sh4d0wfiend/go-shadowsocksr2

* Implement ssr obfs

Reference:
https://github.com/mzz2017/shadowsocksR

* Implement ssr protocol

References:
https://github.com/mzz2017/shadowsocksR
https://github.com/shadowsocksRb/shadowsocksr-libev
https://github.com/shadowsocksr-backup/shadowsocksr
2020-07-22 23:02:15 +08:00
.github Feature: add github stale action 2020-07-09 10:27:05 +08:00
adapters Feature: add ssr support (#805) 2020-07-22 23:02:15 +08:00
common Improve: fix go test race detect 2020-07-18 20:56:13 +08:00
component Feature: add ssr support (#805) 2020-07-22 23:02:15 +08:00
config Feature: support PROCESS-NAME on macOS 2020-07-19 13:18:23 +08:00
constant Feature: add ssr support (#805) 2020-07-22 23:02:15 +08:00
dns Fix: dns should put msg to cache while exchangeWithoutCache (#820) 2020-07-20 21:16:36 +08:00
docs Update: README.md logo and badges 2018-06-23 00:44:28 +08:00
hub Fix: ticker leak 2020-07-13 00:25:54 +08:00
log Chore: support MarshalYAML to some config filed (#581) 2020-03-15 19:40:39 +08:00
proxy Fix: cannot listen socks5 port on wsl (#748) 2020-06-15 10:34:15 +08:00
rules Improve: add cache for macOS PROCESS-NAME 2020-07-22 20:35:27 +08:00
tunnel Chore: add rule payload in log 2020-07-18 19:22:09 +08:00
.gitignore Optimization: socks UDP & fix typo (#261) 2019-08-12 14:01:32 +08:00
Dockerfile Fix: docker multiplatform build 2020-06-21 12:38:14 +08:00
LICENSE License: use GPL 3.0 2019-10-18 11:12:35 +08:00
Makefile Fix: docker multiplatform build 2020-06-21 12:38:14 +08:00
README.md Chore: README.md style fixed (#825) 2020-07-22 21:34:37 +08:00
go.mod Feature: add ssr support (#805) 2020-07-22 23:02:15 +08:00
go.sum Feature: add ssr support (#805) 2020-07-22 23:02:15 +08:00
main.go Feature: add more command-line options (#656) 2020-04-27 22:23:09 +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