js882829 / OpenWrt-mihomo

A project contains mihomo packages for OpenWrt.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub License GitHub Actions Workflow Status GitHub Actions Workflow Status GitHub Tag GitHub Downloads (all assets, all releases) GitHub Repo stars

OpenWrt-mihomo

A project contains mihomo packages for OpenWrt.

Feature

  • Transparent Proxy (TPROXY/TUN, IPv4 and/or IPv6)
  • Access Control
  • Compatible with Multiple WAN
  • Profile Mixin
  • Profile Editor
  • Scheduled Restart

Usage

See Wiki

How does it work

  1. Mixin and Update profile.
  2. Run mihomo.
  3. Run hijack prepare script.
  4. Add exclusions. (wan/wan6 inbound, firewall rule/redirect, UPnP)
  5. Add router hijack.
  6. Add lan hijack with access control.
  7. Set scheduled restart.

Note that the steps above may change base on config.

Compilation

# add mihomo feeds
echo "src-git mihomo https://github.com/morytyann/OpenWrt-mihomo.git;main" >> "feeds.conf.default"
# update & install feeds
./scripts/feeds update -a
./scripts/feeds install -a
# make package
make package/luci-app-mihomo/compile

The ipk file will be found under bin/packages/your_architecture/mihomo.

Dependencies

  • ca-bundle
  • curl
  • inotifywait
  • yq
  • firewall4
  • kmod-nft-tproxy
  • ip-full
  • kmod-tun

Warning

  • Only support firewall4 and will never support firewall3

About

A project contains mihomo packages for OpenWrt.

License:MIT License


Languages

Language:Shell 53.8%Language:JavaScript 41.8%Language:Makefile 4.5%