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 >
2023-11-03 13:01:45 +00:00
< img src = "https://img.shields.io/github/go-mod/go-version/MetaCubeX/mihomo?style=flat-square" >
< 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
2020-06-28 02:39:30 +00:00
- 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
2020-06-28 02:39:30 +00:00
- 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` .
2020-06-28 02:39:30 +00:00
- 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-01-10 16:10:39 +00:00
2023-11-03 13:01:45 +00:00
Documentation can be found in [mihomo Docs ](https://wiki.metacubex.one/ ).
2023-01-10 16:10:39 +00:00
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:
2023-01-28 16:17:01 +00:00
2023-01-10 16:10:39 +00:00
```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-01-10 16:10:39 +00:00
```
2023-10-19 15:41:43 +00:00
Set go proxy if a connection to GitHub is not possible:
2023-01-28 16:17:01 +00:00
2023-01-10 16:10:39 +00:00
```shell
go env -w GOPROXY=https://goproxy.io,direct
```
2023-10-19 15:41:43 +00:00
Build with gvisor tun stack:
2023-01-28 16:17:01 +00:00
2023-01-20 09:13:32 +00:00
```shell
go build -tags with_gvisor
```
2022-03-21 21:38:42 +00:00
### IPTABLES configuration
2023-01-28 16:17:01 +00:00
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
2022-03-21 21:38:42 +00:00
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
2020-03-20 04:35:30 +00:00
## Credits
2018-08-11 20:22:14 +00:00
2023-01-28 16:17:01 +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
2018-07-15 14:32:20 +00:00
## License
2018-08-11 20:22:14 +00:00
2020-06-28 02:39:30 +00:00
This software is released under the GPL-3.0 license.
2023-11-03 13:01:45 +00:00
[![FOSSA Status ](https://app.fossa.io/api/projects/git%2Bgithub.com%2FMetaCubeX%2Fmihomo.svg?type=large )](https://app.fossa.io/projects/git%2Bgithub.com%2FMetaCubeX%2Fmihomo?ref=badge_large)