clash/README.md

101 lines
3 KiB
Markdown
Raw Permalink Normal View History

2018-06-22 16:44:28 +00:00
<h1 align="center">
2021-12-09 09:54:53 +00:00
<img src="Meta.png" alt="Meta Kennel" width="200">
2022-01-06 02:49:26 +00:00
<br>Meta Kernel<br>
2018-06-22 16:44:28 +00:00
</h1>
2023-11-03 13:01:45 +00:00
<h3 align="center">Another Mihomo Kernel.</h3>
2018-06-22 16:44:28 +00:00
<p align="center">
2023-11-03 13:01:45 +00:00
<a href="https://goreportcard.com/report/github.com/MetaCubeX/mihomo">
<img src="https://goreportcard.com/badge/github.com/MetaCubeX/mihomo?style=flat-square">
2018-06-22 16:44:28 +00:00
</a>
2024-01-17 05:31:21 +00:00
<img src="https://img.shields.io/github/go-mod/go-version/MetaCubeX/mihomo/Alpha?style=flat-square">
2023-11-03 13:01:45 +00:00
<a href="https://github.com/MetaCubeX/mihomo/releases">
<img src="https://img.shields.io/github/release/MetaCubeX/mihomo/all.svg?style=flat-square">
2018-06-22 16:44:28 +00:00
</a>
2023-11-03 13:01:45 +00:00
<a href="https://github.com/MetaCubeX/mihomo">
2021-12-04 12:40:09 +00:00
<img src="https://img.shields.io/badge/release-Meta-00b4f0?style=flat-square">
2021-09-20 09:22:40 +00:00
</a>
2018-06-22 16:44:28 +00:00
</p>
2018-06-10 14:50:03 +00:00
## Features
- Local HTTP/HTTPS/SOCKS server with authentication support
2023-10-19 15:41:43 +00:00
- VMess, VLESS, Shadowsocks, Trojan, Snell, TUIC, Hysteria protocol support
- Built-in DNS server that aims to minimize DNS pollution attack impact, supports DoH/DoT upstream and fake IP.
2021-09-20 09:22:40 +00:00
- Rules based off domains, GEOIP, IPCIDR or Process to forward packets to different nodes
2023-09-09 05:06:49 +00:00
- 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 hard-coding in config
2023-11-03 13:01:45 +00:00
- Netfilter TCP redirecting. Deploy Mihomo on your Internet gateway with `iptables`.
- Comprehensive HTTP RESTful API controller
2018-08-14 10:06:56 +00:00
2023-09-09 05:06:49 +00:00
## Dashboard
2023-10-19 15:41:43 +00:00
A web dashboard with first-class support for this project has been created; it can be checked out at [metacubexd](https://github.com/MetaCubeX/metacubexd).
2023-09-09 05:06:49 +00:00
2023-10-19 15:41:43 +00:00
## Configration example
2023-09-09 05:06:49 +00:00
2023-11-03 13:01:45 +00:00
Configuration example is located at [/docs/config.yaml](https://github.com/MetaCubeX/mihomo/blob/Alpha/docs/config.yaml).
2022-01-05 09:04:56 +00:00
2023-10-19 15:41:43 +00:00
## Docs
2023-11-03 13:01:45 +00:00
Documentation can be found in [mihomo Docs](https://wiki.metacubex.one/).
2023-10-19 15:41:43 +00:00
## For development
Requirements:
[Go 1.20 or newer](https://go.dev/dl/)
2023-11-03 13:01:45 +00:00
Build mihomo:
```shell
2023-11-03 13:01:45 +00:00
git clone https://github.com/MetaCubeX/mihomo.git
cd mihomo && go mod download
2023-10-19 15:41:43 +00:00
go build
```
2023-10-19 15:41:43 +00:00
Set go proxy if a connection to GitHub is not possible:
```shell
go env -w GOPROXY=https://goproxy.io,direct
```
2023-10-19 15:41:43 +00:00
Build with gvisor tun stack:
2023-01-20 09:13:32 +00:00
```shell
go build -tags with_gvisor
```
### IPTABLES configuration
2023-02-05 15:36:08 +00:00
Work on Linux OS which supported `iptables`
2021-11-17 08:03:47 +00:00
```yaml
# Enable the TPROXY listener
tproxy-port: 9898
iptables:
enable: true # default is false
inbound-interface: eth0 # detect the inbound interface, default is 'lo'
2021-11-17 08:03:47 +00:00
```
2023-01-30 12:39:13 +00:00
## Debugging
2023-10-19 15:41:43 +00:00
Check [wiki](https://wiki.metacubex.one/api/#debug) to get an instruction on using debug
2023-09-09 05:06:49 +00:00
API.
2023-01-30 12:39:13 +00:00
## Credits
2018-08-11 20:22:14 +00:00
- [Dreamacro/clash](https://github.com/Dreamacro/clash)
- [SagerNet/sing-box](https://github.com/SagerNet/sing-box)
- [riobard/go-shadowsocks2](https://github.com/riobard/go-shadowsocks2)
- [v2ray/v2ray-core](https://github.com/v2ray/v2ray-core)
- [WireGuard/wireguard-go](https://github.com/WireGuard/wireguard-go)
- [yaling888/clash-plus-pro](https://github.com/yaling888/clash)
2018-09-16 15:08:04 +00:00
## License
2018-08-11 20:22:14 +00:00
This software is released under the GPL-3.0 license.