【转载】Proxifier+Clash 全局扩展脚本 + DNS 覆写脚本(替代系统代理、TUN模式、防止DNS泄露)

本文为转载内容,保留原帖观点与结构;如有侵权请联系我处理。

简而言之,用 Proxifier+Clash 配套来替代 Clash 自带的系统代理和 TUN 模式。

Proxifier 比 Clash 优先级更高(更底层),会强制接管所有系统流量,包括那些不走系统代理的软件。我们使用 Proxifier 捕获流量,再转发给 Clash 处理流量。

Ⅰ 配置 Clash

全局扩展脚本

全局扩展脚本

我用的是右边的 js 扩展脚本,不用左边的 yaml 覆写是因为左边的覆写会直接全部覆盖原来对应的配置,不够灵活:

// main 是入口方法,一定要有
function main(config, profileName) {
  createCustomRules(config);
  createCustomGeox(config);
  return config;
}

// 创建自定义分流规则,参见:https://clash.wiki/configuration/rules.html
const createCustomRules = (config) => {
  let customRules = [
    // 上面这几条只作演示,重点是下面的地理信息规则(增加的自定义规则需要放在地理信息规则的前面)
    // 直连
    //"DST-PORT,53317,DIRECT"                              // LocalSend 收发文件直连
    // 拒绝
    //,"DOMAIN-SUFFIX,trafficjunky.net,REJECT"             // Ads Block
    // 强制指定节点
    //,"DOMAIN-KEYWORD,google,美国洛杉矶[CU]"               // 替换成你自己的代理

    // 地理信息(与DNS覆写脚本配合可以防止DNS泄露)
    "GEOSITE,geolocation-!cn@cn,DIRECT"
    ,"GEOSITE,geolocation-!cn,Proxy"                    // 替换成你自己的代理
    ,"GEOSITE,geolocation-cn@!cn,Proxy"                 // 替换成你自己的代理
    ,"GEOSITE,geolocation-cn,DIRECT"
    ,"GEOSITE,tld-cn,DIRECT"
  ];
  config.rules = customRules.concat(config.rules);
}

// 创建自定义地理信息下载链接配置,参见:https://wiki.metacubex.one/ru/config/general/?h=geox+url#url-geo
const createCustomGeox = (config) => {
  let customGeox = {
    // 地理信息(与DNS覆写脚本配合可以防止DNS泄露)
    geosite: "https://testingcf.jsdelivr.net/gh/v2fly/domain-list-community@release/dlc.dat"
  };
  config["geox-url"] = customGeox;
}

// 创建自定义代理组(这里只作演示)
// const createCustomProxyGroups = (config) => {
//   let customProxyGroups = [
//     {
//       name: "自定义代理组-REJECT"
//       ,proxies: ["REJECT"]
//       ,type: "select"
//     },
//   ];
//   config["proxy-groups"] = customProxyGroups.concat(config["proxy-groups"]);
// }

DNS 覆写脚本

DNS 覆写脚本

DNS 覆写脚本和上面的地理信息分流规则来自 防止DNS泄漏小巧思补充

dns:
  default-nameserver:
  - tls://223.5.5.5
  - tls://223.6.6.6
  direct-nameserver:
  - https://dns.alidns.com/dns-query
  - https://doh.pub/dns-query
  direct-nameserver-follow-policy: false
  enable: true
  enhanced-mode: fake-ip
  fake-ip-filter:
  - '*.lan'
  - '*.local'
  - '*.arpa'
  - time.*.com
  - ntp.*.com
  - time.*.com
  - +.market.xiaomi.com
  - localhost.ptlogin2.qq.com
  - '*.msftncsi.com'
  - www.msftconnecttest.com
  fake-ip-filter-mode: blacklist
  fake-ip-range: 198.18.0.1/16
  fallback: []
  fallback-filter:
    domain:
    - +.google.com
    - +.facebook.com
    - +.youtube.com
    geoip: true
    geoip-code: CN
    ipcidr:
    - 240.0.0.0/4
    - 0.0.0.0/32
  ipv6: true
  listen: :53
  nameserver:
  - https://cloudflare-dns.com/dns-query
  - https://dns.google/dns-query
  prefer-h3: false
  proxy-server-nameserver:
  - https://dns.alidns.com/dns-query
  - https://doh.pub/dns-query
  respect-rules: true
  use-hosts: false
  use-system-hosts: false

其他配置

关闭 Clash 的系统代理和TUN模式!

捕获系统流量的工作已经交由 Proxifier 代劳了,Clash 只需要作为流量处理服务运行即可,不需要它自带的用来捕获系统流量的 系统代理 和 TUN模式 。

关闭 Chrome 的“使用安全 DNS”选项

image

Ⅱ 配置 Proxifier

多图预警,配置过程和解释大部分都在图中标注了

代理服务器配置

代理服务器配置

代理规则配置

代理规则配置
  1. 兜底规则

  2. Clash 直出规则 前文已经提到过,Proxifier 是比 Clash 更底层的,如果不让 Clash 流量走直出,那么 Clash 处理之后的流量会再次被 Proxifier 捕获,造成无限回环。

  3. 其他不走代理的直出规则

从上面可以看出,我这样配置的结果是黑名单规则,除非指定某个程序/域名/IP直连,否则其他的所有流量都要走 Clash 代理。(当然流量进到 Clash 下一步再怎么走就是分流规则的事了)

域名解析配置

域名解析配置

高级选项

高级选项

Ⅲ 最终效果

多图预警,测试网站标注在各图片的脚注
网站分流测试结果
DNS 泄露检测结果

访问国内网站正常走国内 DNS 服务器,使用 DNS 泄露网站测试没有出现国内的 DNS 服务器:

Ⅳ 其他

同时运行其他游戏加速器或 VPN 软件

我测试了在上述配置启用的情况下,我使用的游戏加速器、VPN软件是可以同时工作的。

但是这个我不能保证所有人都可行,佬友可以测试一下自己的情况。


📌 转载信息
转载时间: 2025/12/22 08:19:22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注