A simple Python Pydantic model for Honkai: Star Rail parsed data from the Mihomo API.
Go to file
Aubrey Yang 828ba83ef3
Optimizations on the Round Robin strategies
Implemented optimizations on the Round Robin proxy selection strategies to enhance performance and stability under varying network conditions and proxy availabilities.

Dynamic Update Mechanism: Integrated an event-driven approach that triggers the proxy list update process when significant changes in proxy status are detected, rather than on every touch.

Memory and Performance: Optimized the management of the available proxies list to update in-place where possible.

Load Distribution: Improved the fairness in proxy usage by introducing a weighted round-robin mechanism that accounts for proxy response times and error rates, ensuring a more balanced load across the proxies.
2024-04-17 18:20:30 +09:00
.github action: typo 2024-04-05 10:23:15 +08:00
adapter Optimizations on the Round Robin strategies 2024-04-17 18:20:30 +09:00
common feat: Converter support Xray HTTPUpgrade fast open path 2024-03-30 18:19:40 +08:00
component fix: system:// should ignore dns server setting by tun listener 2024-04-13 08:02:43 +08:00
config feat: support external-controller-unix 2024-04-17 09:39:00 +08:00
constant chore: Make SubScriptioninfo query also follow Proxy 2024-04-12 04:58:07 +08:00
context chore: hello mihomo 2023-11-03 21:58:21 +08:00
dns fix: system:// should ignore dns server setting by tun listener 2024-04-13 08:02:43 +08:00
docker chore: hello mihomo 2023-11-03 21:58:21 +08:00
docs doc: cleanup 2024-04-17 09:39:30 +08:00
hub chore: Working with unix directory 2024-04-17 11:12:29 +08:00
listener fix: system:// should ignore dns server setting by tun listener 2024-04-13 08:02:43 +08:00
log chore: don't force output color in log 2023-12-09 10:53:19 +08:00
ntp fix(ntp): simplify NTP service initialization and error handling 2024-01-17 16:14:25 +08:00
rules feat: Allow providers to set individual proxy and headers 2024-04-08 01:27:17 +08:00
test feat: support ARC for DNS cache 2023-12-03 08:37:05 +08:00
transport fixed: invalid argument to Intn (#1133) 2024-03-26 14:19:33 +08:00
tunnel chore: don't retry when rejected loopback connection 2024-04-03 08:42:15 +08:00
.gitignore chore: update gitignore 2023-01-14 18:10:22 +08:00
.golangci.yaml chore: hello mihomo 2023-11-03 21:58:21 +08:00
android_tz.go chore: Replace android timezone implementation 2024-03-10 02:24:28 +08:00
check_amd64.sh chore: add docker workflow 2022-04-28 14:18:54 +08:00
Dockerfile chore: Update workflow 2024-02-25 20:42:01 +08:00
flake.lock chore: update flake lock 2022-12-15 13:25:18 +08:00
flake.nix chore: hello mihomo 2023-11-03 21:58:21 +08:00
go.mod fix: hy2 packetId race 2024-04-09 14:52:22 +08:00
go.sum fix: hy2 packetId race 2024-04-09 14:52:22 +08:00
LICENSE License: use GPL 3.0 2019-10-18 11:12:35 +08:00
main.go feat: support -ext-ctl-unix cmdline to override external controller unix address 2024-04-17 10:08:54 +08:00
Makefile ci: bump github-actions version 2024-02-05 14:03:21 +08:00
Meta.png [readme] 2021-12-09 17:54:53 +08:00
README.md docs: README.md 2024-01-17 13:31:21 +08:00

Meta Kennel
Meta Kernel

Another Mihomo Kernel.

Features

  • Local HTTP/HTTPS/SOCKS server with authentication support
  • 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.
  • Rules based off domains, GEOIP, IPCIDR or Process 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 hard-coding in config
  • Netfilter TCP redirecting. Deploy Mihomo on your Internet gateway with iptables.
  • Comprehensive HTTP RESTful API controller

Dashboard

A web dashboard with first-class support for this project has been created; it can be checked out at metacubexd.

Configration example

Configuration example is located at /docs/config.yaml.

Docs

Documentation can be found in mihomo Docs.

For development

Requirements: Go 1.20 or newer

Build mihomo:

git clone https://github.com/MetaCubeX/mihomo.git
cd mihomo && go mod download
go build

Set go proxy if a connection to GitHub is not possible:

go env -w GOPROXY=https://goproxy.io,direct

Build with gvisor tun stack:

go build -tags with_gvisor

IPTABLES configuration

Work on Linux OS which supported iptables

# Enable the TPROXY listener
tproxy-port: 9898

iptables:
  enable: true # default is false
  inbound-interface: eth0 # detect the inbound interface, default is 'lo'

Debugging

Check wiki to get an instruction on using debug API.

Credits

License

This software is released under the GPL-3.0 license.

FOSSA Status