# ==============================================================================
# Mihomo 轻量版：VLESS + REALITY + 内置 GEOSITE/GEOIP 分流
#
# 与订阅版（mihomo-config-sub.yaml）的区别：
#   订阅版：Loyalsoldier 13 个规则集 / 348,226 条规则 / 9 个策略组 / 约 8.5MB 缓存
#   轻量版：全部改用内核内置的 GEOSITE + GEOIP / 11 条规则 / 4 个策略组
#           —— 不下载任何 .txt 规则文件，冷启动更快、内存占用更低。
#
# 代价：分流粒度变粗（只有「国内直连 / 国外走节点 / 广告拦截」三层），
#       流媒体、AI 服务、Telegram 不再单独分组。日常使用足够。
#
# 节点仍然自动跟随 3x-ui 面板（proxy-providers），换端口/改密钥无需动本文件。
# ==============================================================================

mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
ipv6: false
external-controller: 127.0.0.1:9090

unified-delay: true
tcp-concurrent: true

profile:
  store-selected: true
  store-fake-ip: true

# ------------------------------------------------------- 地理数据（GEOSITE/GEOIP）
# 轻量版的核心：用内核自带的 geosite.dat / geoip.dat 做分流判断，
# 而不是逐条下载几十万行域名列表。
# 注意：GeoIP 数据走 MMDB（country.mmdb），国内直连 GitHub 拉不到，
#       所以这里显式指到 jsDelivr 镜像（实测 0.3~1.4s 可达）。
geodata-mode: true
geodata-loader: memconservative
geo-auto-update: true
geo-update-interval: 24
geox-url:
  geoip: "https://fastly.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/geoip.dat"
  geosite: "https://fastly.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/geosite.dat"
  mmdb: "https://fastly.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/country.mmdb"

# ------------------------------------------------------------------ DNS
dns:
  enable: true
  ipv6: false
  listen: 0.0.0.0:1053
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  fake-ip-filter:
    - '*.lan'
    - '*.local'
    - '+.msftconnecttest.com'
    - '+.msftncsi.com'
    - 'localhost.ptlogin2.qq.com'
    - '+.stun.*.*'
    - '+.stun.*.*.*'
    - '+.xboxlive.com'
  default-nameserver:
    - 223.5.5.5
    - 119.29.29.29
  nameserver:
    - https://dns.alidns.com/dns-query
    - https://doh.pub/dns-query
  proxy-server-nameserver:
    - https://dns.alidns.com/dns-query
    - https://doh.pub/dns-query

# --------------------------------------------------------------- 订阅
proxy-providers:
  panel:
    type: http
    # /mihomo/ 是 3x-ui 的显式 Mihomo 端点，不依赖 User-Agent 识别。
    # 面板换端口 / 换 UUID / 重新生成密钥后，客户端 1 小时内自动跟上。
    url: "https://panel.2233668.xyz:2096/mihomo/m98vwlis3ijhgxnm"
    path: ./proxy_provider/panel.yaml
    interval: 3600
    proxy: DIRECT
    health-check:
      enable: true
      url: https://www.gstatic.com/generate_204
      interval: 300

# --------------------------------------------------------------- 策略组（4 个）
proxy-groups:
  - name: "🚀 节点选择"
    type: select
    use: [panel]
    # 不要在这里加 proxies: [DIRECT]：显式写出的项会排在订阅节点之前，
    # 全新安装时该组默认选中它，表现为"代理没生效"。需要直连请选 🎯 全球直连。

  - name: "🎯 全球直连"
    type: select
    use: [panel]
    proxies: [DIRECT, "🚀 节点选择"]

  - name: "🛑 广告拦截"
    type: select
    proxies: [REJECT, DIRECT]

  - name: "🐟 漏网之鱼"
    type: select
    use: [panel]
    proxies: ["🚀 节点选择", DIRECT]

# --------------------------------------------------------------- 规则（11 条）
rules:
  # 局域网 / 私有地址
  # 注意：GEOIP,private 在 geoip.dat 里不存在（private 是 geosite 的分类），
  #       所以局域网网段用 IP-CIDR 显式列出，避免访问路由器/NAS 时被绕到国外。
  - GEOSITE,private,🎯 全球直连
  - IP-CIDR,192.168.0.0/16,🎯 全球直连,no-resolve
  - IP-CIDR,10.0.0.0/8,🎯 全球直连,no-resolve
  - IP-CIDR,172.16.0.0/12,🎯 全球直连,no-resolve
  - IP-CIDR,127.0.0.0/8,🎯 全球直连,no-resolve
  - IP-CIDR6,fc00::/7,🎯 全球直连,no-resolve
  - IP-CIDR6,fe80::/10,🎯 全球直连,no-resolve

  # 广告、统计、恶意域名
  - GEOSITE,category-ads-all,🛑 广告拦截

  # 国内可直连的国外服务（苹果、微软、Google 中国节点）
  - GEOSITE,apple,🎯 全球直连
  - GEOSITE,microsoft,🎯 全球直连
  - GEOSITE,google-cn,🎯 全球直连

  # 国内域名与国内 IP
  - GEOSITE,cn,🎯 全球直连
  - GEOIP,CN,🎯 全球直连,no-resolve

  # 需要代理的
  - GEOSITE,gfw,🚀 节点选择
  - GEOSITE,geolocation-!cn,🚀 节点选择

  # 兜底
  - MATCH,🐟 漏网之鱼