mihomo 订阅自用覆写 JS(支持 FlClash)
极简自用,无花里胡哨,核心需求:精确分流
- 全 CDN 高精度 GEO 集成
- 主流 AI 分流
- 性能兼容性优化 (IPv6/QUIC)
- DNS 分流不泄露
- 微信苹果等服务优化
使用方法:
function main(config) {
const allProxies = (config.proxies || []).map((p) => p.name).filter(Boolean);
// --- 1. 全局资源与性能优化 (Hackl0us & Loyalsoldier) ---
config["ipv6"] = false;
config["unified-delay"] = true;
config["tcp-concurrent"] = true;
// 开启 Geodata 模式(必须开启才能使用 geosite/geoip 规则)
config["geodata-mode"] = true;
// 加载器设为 standard 或 memconservative 均可
config["geodata-loader"] = "standard";
// [核心] 替换为高精度资源地址 // 1. Geosite (域名): 使用 Loyalsoldier,规则最全
config["geosite-url"] = "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat";
// 2. MMDB (IP): 使用 Hackl0us,国内 IP 精度最高 (小巧且精准)
config["mmdb-url"] = "https://cdn.jsdelivr.net/gh/Hackl0us/GeoIP2-CN@release/Country.mmdb";
// 3. GeoIP (备用): 虽然主力是用 MMDB,但防止内核回退,也指向 Loyalsoldier
config["geoip-url"] = "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat";
// 自动判断下载 CDN(防止 Github 抽风)
config["find-process-mode"] = "strict";
config["sniffer"] = {
enable: true,
sniff: {
TLS: { ports: [443, 8443] },
HTTP: { ports: [80, "8080-8880"], "override-destination": true },
QUIC: { ports: [443] }
}
};
// --- 2. 策略组设置 --- const DNS_INTL_GROUP = "🛡️ DNS(国外)";
const NODE_GROUP = "🚀 节点选择";
const AUTO_GROUP = "♻️ 自动选择";
const AI_GROUP = "🤖 AI服务";
const EMBY_GROUP = "🎥 Emby服务";
const DIRECT_GROUP = "🎯 全球直连";
const FINAL_GROUP = "🐟 漏网之鱼";
// 筛选 AI 节点 (排除大陆和特定地区) const aiBlacklistRegex = /流量|到期|重置|香港|HK|Hong Kong|澳门|澳門|Macau|MO|俄罗斯|Russia|RU|伊朗|Iran|IR|朝鲜|North Korea|KP|叙利亚|Syria|SY|古巴|Cuba|CU|白俄罗斯|Belarus|BY|韩国|KR|Korea/i;
const aiFilteredProxies = allProxies.filter(name => !aiBlacklistRegex.test(name));
// 筛选 Emby 节点 const embyFilteredProxies = allProxies.filter(name => /Emby/i.test(name));
config["proxy-groups"] = [
{ name: NODE_GROUP, type: "select", proxies: [AUTO_GROUP, ...allProxies, "DIRECT"] },
{ name: DNS_INTL_GROUP, type: "url-test", url: "https://www.gstatic.com/generate_204", interval: 300, proxies: allProxies.length ? allProxies : ["REJECT"] },
{ name: AUTO_GROUP, type: "url-test", url: "https://www.gstatic.com/generate_204", interval: 300, tolerance: 50, proxies: allProxies.length ? allProxies : ["REJECT"] },
{
name: EMBY_GROUP,
type: "url-test",
url: "http://www.gstatic.com/generate_204",
interval: 300,
tolerance: 50,
proxies: embyFilteredProxies.length ? embyFilteredProxies : [NODE_GROUP]
},
{ name: AI_GROUP, type: "select", proxies: aiFilteredProxies.length ? [NODE_GROUP, ...aiFilteredProxies] : [NODE_GROUP, ...allProxies] },
{ name: DIRECT_GROUP, type: "select", proxies: ["DIRECT", NODE_GROUP] },
{ name: FINAL_GROUP, type: "select", proxies: [NODE_GROUP, DIRECT_GROUP] }
];
// --- 3. DNS 优化 --- const dnsCn = ["https://223.5.5.5/dns-query", "https://1.12.12.12/dns-query"];
const dnsIntl = ["https://8.8.8.8/dns-query", "https://1.1.1.1/dns-query"];
config["dns"] = {
enable: true,
ipv6: false,
"enhanced-mode": "fake-ip",
"respect-rules": true,
"dns-hijack": ["any:53"],
"nameserver": dnsCn,
"proxy-server-nameserver": dnsCn,
"fallback": dnsIntl,
"nameserver-policy": {
"geosite:cn": dnsCn,
"geosite:gfw,geolocation-!cn": dnsIntl
}
};
// --- 4. 规则逻辑 (完全依赖 Geosite + 手动补充) ---
config["rules"] = [
// 0. 本地网络 "IP-CIDR,127.0.0.0/8,DIRECT,no-resolve",
"IP-CIDR,192.168.0.0/16,DIRECT,no-resolve",
"IP-CIDR,10.0.0.0/8,DIRECT,no-resolve",
"IP-CIDR,172.16.0.0/12,DIRECT,no-resolve",
// 1. Apple 登录鉴权 "DOMAIN,appleid.apple.com," + AI_GROUP,
"DOMAIN,idmsa.apple.com," + AI_GROUP,
"DOMAIN,gsa.apple.com," + AI_GROUP,
"DOMAIN,identity.apple.com," + AI_GROUP,
// 2. Emby // 3. Apple 其他服务 "GEOSITE,apple," + DIRECT_GROUP,
"DOMAIN-SUFFIX,apple.com," + DIRECT_GROUP,
"DOMAIN-SUFFIX,icloud.com," + DIRECT_GROUP,
// 4. 社交软件直连 "DOMAIN-KEYWORD,tencent," + DIRECT_GROUP,
"DOMAIN-KEYWORD,qq," + DIRECT_GROUP,
"DOMAIN-KEYWORD,wechat," + DIRECT_GROUP,
// 5. 拦截 "AND,((DST-PORT,443),(NETWORK,UDP)),REJECT",
"DOMAIN,dns.google," + DNS_INTL_GROUP,
"DOMAIN,cloudflare-dns.com," + DNS_INTL_GROUP,
"DST-PORT,53,REJECT",
// 6. AI 规则 (使用 Loyalsoldier 的 Geosite 分类) "GEOSITE,openai," + AI_GROUP,
"GEOSITE,anthropic," + AI_GROUP,
"GEOSITE,x," + AI_GROUP,
"GEOSITE,google," + AI_GROUP,
"GEOSITE,youtube," + AI_GROUP,
"DOMAIN-SUFFIX,bard.google.com," + AI_GROUP,
"DOMAIN-SUFFIX,gemini.google.com," + AI_GROUP,
"DOMAIN-SUFFIX,bing.com," + AI_GROUP,
// 7. 国内分流 (使用 Hackl0us MMDB) "GEOSITE,cn," + DIRECT_GROUP,
"GEOIP,CN," + DIRECT_GROUP + ",no-resolve",
// 8. 兜底 "MATCH," + FINAL_GROUP
];
return config;
}
