起因

我喜欢放假时日常和朋友用 discord 打语音,这就需要我一直开着代理。

开了代理访问必应会直接不给访问,这本来没什么影响,反正可以用谷歌,但有一次我捣鼓站点收录推送时,只要碰上微软的服务就进不去,所以我希望必应走直连或者完全走外网。

还有一个原因是,steam 下载游戏也会跑 Clash 流量,而我的流量是有限的,所以希望能写一个规则让下载走直连,但其他 steam 服务(如社区)走代理。

Xbox 也是连接不上去,感觉只要是微软的东西就会出这个问题。所以也需要给 Xbox 配置一个直连规则

查询资料

首先看到的是这篇文章:https://zhuanlan.zhihu.com/p/594275714

第一次了解到 Parser 这个东西。Parser ,解析器,经过上网查询之后了解到这个应该就是和规则配置有关的东西。

,后来看了羽翼城大佬的博客后,是因为登录IP不在国内,导致下载区无法使用国内 CDN 下载。所以我们需要把登录相关的域名和 IP 用 Clash 分流改为直连。

最后的效果是登录和下载的 API 地址都走的直连,下载会跑满带宽,其他像 steam 商店、社区等官方的服务可以正常走节点使用。

实践

在 Clash 的 Setting >> Profiles >> Parsers 中加入以下文本:

注意:

  • url 换成自己的订阅连接

  • DOMAIN-SUFFIX,bing.com 等后面的策略组换成你的机场的策略组

parsers:
  - url: https://www.example.com
    code: |
      module.exports.parse = async (raw, { axios, yaml, notify, console }, { name, url, interval, selected }) => {
        const obj = yaml.parse(raw)
        obj.proxies.forEach( v => {
            if (v.network === 'ws' && !v['ws-opts']) {
              const opts = {}
              opts.path = v['ws-path']
              opts.headers = v['ws-headers']
              v['ws-opts'] = opts
            }
        })
        return yaml.stringify(obj)
      }
    yaml:
      prepend-rules:
        # bing
        - DOMAIN-SUFFIX,bing.com,直接连接
        - DOMAIN-SUFFIX,bingapis.com,直接连接
        - DOMAIN-SUFFIX,msftconnecttest.com,直接连接
        # dogfight
        - DOMAIN-SUFFIX,dogfight360.com,直接连接
        # steam
        - DOMAIN-SUFFIX,steamcontent.com,直接连接 # 更新于2025.2.7,收到一位网友的评论说少了这个
        - DOMAIN-SUFFIX,steamcommunity.com,香港负载组
        - DOMAIN-SUFFIX,api.steampowered.com,直接连接
        - DOMAIN-SUFFIX,*.cm.steampowered.com,直接连接
        - DOMAIN-SUFFIX,*.steamserver.net,直接连接
        - IP-CIDR,103.10.124.0/24,直接连接
        - IP-CIDR,103.10.125.0/24,直接连接
        - IP-CIDR,102.10.125.0/24,直接连接
        - IP-CIDR,103.28.54.0/23,直接连接
        - IP-CIDR,103.28.54.0/24,直接连接
        - IP-CIDR,146.66.152.0/23,直接连接
        - IP-CIDR,146.66.155.0/23,直接连接
        - IP-CIDR,153.254.86.0/23,直接连接
        - IP-CIDR,155.133.224.0/22,直接连接
        - IP-CIDR,155.133.226.0/23,直接连接
        - IP-CIDR,155.133.227.0/23,直接连接
        - IP-CIDR,155.133.230.0/23,直接连接
        - IP-CIDR,155.133.232.0/23,直接连接
        - IP-CIDR,155.133.233.0/23,直接连接
        - IP-CIDR,155.133.234.0/23,直接连接
        - IP-CIDR,155.133.236.0/22,直接连接
        - IP-CIDR,155.133.238.0/23,直接连接
        - IP-CIDR,155.133.239.0/23,直接连接
        - IP-CIDR,155.133.240.0/22,直接连接
        - IP-CIDR,155.133.245.0/23,直接连接
        - IP-CIDR,155.133.246.0/23,直接连接
        - IP-CIDR,155.133.248.0/23,直接连接
        - IP-CIDR,155.133.249.0/23,直接连接
        - IP-CIDR,155.133.250.0/23,直接连接
        - IP-CIDR,155.133.251.0/23,直接连接
        - IP-CIDR,155.133.252.0/23,直接连接
        - IP-CIDR,155.133.253.0/23,直接连接
        - IP-CIDR,155.133.254.0/23,直接连接
        - IP-CIDR,155.133.255.0/23,直接连接
        - IP-CIDR,162.254.192.0/23,直接连接
        - IP-CIDR,162.254.193.0/23,直接连接
        - IP-CIDR,162.254.194.0/22,直接连接
        - IP-CIDR,162.254.195.0/23,直接连接
        - IP-CIDR,162.254.196.0/23,直接连接
        - IP-CIDR,162.254.197.0/23,直接连接
        - IP-CIDR,162.254.198.0/23,直接连接
        - IP-CIDR,162.254.199.0/23,直接连接
        - IP-CIDR,185.25.182.0/23,直接连接
        - IP-CIDR,185.25.183.0/23,直接连接
        - IP-CIDR,190.217.33.0/23,直接连接
        - IP-CIDR,192.69.96.0/21,直接连接
        - IP-CIDR,205.185.194.0/23,直接连接
        - IP-CIDR,205.196.6.0/23,直接连接
        - IP-CIDR,208.64.200.0/23,直接连接
        - IP-CIDR,208.64.201.0/23,直接连接
        - IP-CIDR,208.64.202.0/23,直接连接
        - IP-CIDR,208.64.203.0/23,直接连接
        - IP-CIDR,208.78.164.0/22,直接连接
        # xbox
        - DOMAIN-SUFFIX,xbox.com,直接连接
        - DOMAIN-SUFFIX,xboxab.com,直接连接
        - DOMAIN-SUFFIX,xboxab.net,直接连接
        - DOMAIN-SUFFIX,xboxlive.com,直接连接
        - DOMAIN-SUFFIX,xboxservice.com,直接连接
        - DOMAIN-SUFFIX,xboxservices.com,直接连接
        - DOMAIN-SUFFIX,gamepass.com,直接连接

后来又找到了一个专用于配置规则的 Github 项目:https://github.com/ACL4SSR/ACL4SSR/tree/master/Clash

若有其他需要可以参考这个项目。

结果

最终 steam 识别出地区在 CN,可是下载游戏还是会走代理。Bing 能正常进入。Xbox 无法进入

然后再上网找了各种办法,无果。目前只解决了一个 Bing 的问题。

各位可以试试上述的方案(如果可以的话那可能是我这边的问题),如果不行的话建议把 steam 那段删除,经过测试下载仍然走的代理,而云存档同步没走代理。。无法同步

2025.2.7更新

由于收到一位网友的评论说少了一行steamcontent.com,于是加了一行DOMAIN-SUFFIX,steamcontent.com,直接连接

Life is a Rainmeter