V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
techstay
V2EX  ›  程序员

请教一下 clash 的最适合打开方式,以及几个小疑问

  •  
  •   techstay ·
    techstay · 2023-01-16 18:59:34 +08:00 · 3363 次点击
    这是一个创建于 436 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问一下大家都是怎么使用 clash 翻墙上网的。小弟我有两个疑问,想请教一下大家。

    clash 使用方式

    cfw

    第一种就是使用 cfw 等软件本地代理,这种方式基本上够用了。cfw 也支持 mixin 等功能,能自己添加规则,配合机场的规则,用起来没出过什么问题。

    但是缺点就是每台设备都要安装 clash ,配置起来稍微有点麻烦。

    软路由

    第二种就是搞个软路由用 openclash ,这也是我现在试图折腾的东西。看大佬们配置成功以后,应该能享受完全无感的上网体验。但是这个配置起来就麻烦许多,还需要购买设备。所以我目前想用虚拟机先折腾一下,如果好用的话在看看要不要买一个。

    软路由的缺点就是配置起来麻烦许多,我遇到不少小问题,感觉还需要慢慢一点点解决。

    大家平时都用哪种方式?

    规则

    clash 基于规则做分流,所以体验好不好和规则完善与否应该有不小的关系。机场默认的规则肯定是不够用的,所以想请教大家一下,平时自己是怎么处理规则的,或者有没有什么比较好用的第三方规则推荐?

    https://github.com/Loyalsoldier/clash-rules,大家平时都用啥,交流一下?

    程序名规则的疑问

    我看 clash 有个按程序名字做分流的功能,这个应该是只有本地才能使用的吧。那软路由上应该就没办法用这类规则了吧,会不会影响分流的准确度?

    27 条回复    2023-01-21 08:13:13 +08:00
    SbloodyS
        1
    SbloodyS  
       2023-01-16 19:08:22 +08:00   ❤️ 2
    lightionight
        2
    lightionight  
       2023-01-16 19:11:16 +08:00 via Android
    你这就适合 cfa 或者 cfw 设置好,然后打开允许局域网访问,在家里 WiFi 的话,把其他需要翻墙的设备网关和 dns 设置为 cfw 的电脑 ip
    zhouweiluan
        3
    zhouweiluan  
       2023-01-16 19:12:07 +08:00 via iPhone
    软路由肯定最佳,配置难度没想像中难,大家都是用的同一种配置文件。只要 cfw 会配,OpenClash 就一样会配,大可放心。
    规则我是自己维护一份放到 Github 上自用,省事儿的可以去扒人家抓好的域名拿过来,然后通过自己弄好的 ini 文件扔到转换器里面就能很快速生成 Clash 配置文件。
    准确度可以自己使用起来之后慢慢根据自己的需要去维护,我用到现在基本没什么分流不符的问题。
    ysc3839
        4
    ysc3839  
       2023-01-16 19:14:55 +08:00 via Android
    我是自己写了个启动器,不使用规则
    lostberryzz
        5
    lostberryzz  
       2023-01-16 19:20:31 +08:00
    主要看你是一台笔记本扛着到处跑还是固定位置上网,不过总体推荐非必要不上软路由(比如说给一家的设备提供服务这种场景),灵活性和稳定性都欠佳
    billytom
        6
    billytom  
       2023-01-16 20:26:52 +08:00
    软路由,Tun 模式,不要用 openclash ,换用 meta clash core ,然后写 init 或 systemctl 启动脚本来跑
    wangyu17455
        7
    wangyu17455  
       2023-01-16 20:30:19 +08:00
    虚拟机里的 alpine linux 装 clash meta 开 tun,内存限制 256m 然后开 swap 解决 tun 的内存泄漏问题,需要代理的设备手动指定 clash 为网关,这样 clash 挂了也不影响家里人上网,其实全局代理完全用不着软路由
    Yzh361
        8
    Yzh361  
       2023-01-16 20:39:26 +08:00 via Android
    OpenWrt 上用 hello, passwall, SSR+。
    openclash 以前也用,不过启动太慢了。测速结果也不如另外几个快。

    Merlin 上用 科学上网 和 MerlinClash. 梅林上的 clash 挺稳定。
    maemual
        9
    maemual  
       2023-01-16 20:44:51 +08:00
    弄了台 x86 随便跑个 linux ,用 linux tun 模式,配置其实挺简单的。。。。
    chotow
        10
    chotow  
       2023-01-16 20:50:36 +08:00
    @billytom @wangyu17455 @maemual 请教几位,选择 TUN 而不是 iptables/nftables 的原因是? 🤔
    wangyu17455
        11
    wangyu17455  
       2023-01-16 21:11:53 +08:00
    @chotow iptables 虽然性能更好而且不会影响 ping 但是代理不了 ipv6 ,但是因为 googlevideo 这个域名有 ipv6 而且没被阻断,看 youtube 的时候经常变成直连然后卡的播不了,不关 ipv6 是因为有一些纯 ipv6 的机器要连
    systemcall
        12
    systemcall  
       2023-01-16 22:21:07 +08:00
    @wangyu17455 #11
    一般的情况下还是 fake-ip 更好吧
    me221
        13
    me221  
       2023-01-16 22:45:51 +08:00
    直接跑 meta 内核用 winsw 注册为服务. 配置文件自己写

    规则: geoip geosite 分开国内国外, final: proxy, 最后把内网地址排除就可以了.

    路由器就没法用程序分流了
    jsomin
        14
    jsomin  
       2023-01-16 22:48:58 +08:00
    @zhouweiluan #3 请教一下,我用旁路由开 openclash 然后用 tun 模式,电脑玩英雄联盟总是掉线,不开就没事,谷歌了好久都没找到解决的方法,每次打 LOL 都要关掉 openclash ,这个大概是哪里有问题?您有什么意见么?
    helloet
        15
    helloet  
       2023-01-16 23:28:05 +08:00   ❤️ 1
    r66s 用的 openclash ,meta 核心,配合 Loyalsoldier/clash-rules 的规则 + 自己的规则维护一份 clash 配置单。
    summersun2021
        16
    summersun2021  
       2023-01-17 00:48:50 +08:00
    我用的没那么复杂,我一台 macmini ,装了个 clash pro 开了增强,然后家里哪台机器想上就手动 ip 即可,当然 mbp 也装上了,流动的科学上网,例如带 atv 盒子和 chromecast 谷歌盒子过年回家看电视,我就是用 mac 带的网络,即插即用。
    totoro625
        17
    totoro625  
       2023-01-17 01:34:11 +08:00 via iPhone
    软路由 openclash 用的 meta 内核,j4125 最优解,大概 500
    设备会额外安装 cfw 备用

    因为我自己编写的规则用了大量的负载均衡,故障转移,中继,而且层层嵌套,移动设备使用会比较费电,移动设备都是穿透回家或者连接公网云服务器

    规则全部用自己写的,日常有看连接日志的习惯,哪里走错了就微调一下,配置都是放在云存储上,多设备定时拉取更新,写的很乱,但是比较符合自己的心意
    yin1999
        18
    yin1999  
       2023-01-17 08:29:52 +08:00 via Android
    @wangyu17455 有 ip6tables ,用 nftables 就更方便了,代理软件不是用优先域名匹配的更多些嘛,根据 sni 来对 HTTPS 流量做分流就成了。我是参考 Xray 配置的 https://xtls.github.io/document/level-2/tproxy_ipv4_and_ipv6.html#%E4%BD%BF%E7%94%A8-iptables
    Helsing
        19
    Helsing  
       2023-01-17 08:55:32 +08:00 via iPhone
    斐讯 N1 + openclash ,但是用着不稳定,时不时要重启
    oneisall8955
        20
    oneisall8955  
       2023-01-17 09:47:01 +08:00 via Android
    clash 小白,楼主折腾完后出个教程艾特我好吗?一直不太懂 clash 怎么玩,不会配置,这几年还在用 v2rayN 旧版本配合自定义 pac ,节点卡了就换个节点
    maemual
        21
    maemual  
       2023-01-17 10:10:47 +08:00
    @chotow #10 TUN 简单。我之前用了好多年的 iptable 的方案。去年换到 TUN ,感觉十分清爽。实在不想看 iptable 的各种乱七八糟规则。
    KoreaFish
        22
    KoreaFish  
       2023-01-17 13:09:10 +08:00 via iPhone
    Macmini 跑 Clash X Pro ,有錢的可以 surge
    NaiveSimpleYoung
        23
    NaiveSimpleYoung  
       2023-01-17 22:32:16 +08:00 via Android
    上游正常 WiFi ,家人用,下游软路由上 openclash +ap ,自己用。
    MurkeyMua
        24
    MurkeyMua  
       2023-01-18 07:01:46 +08:00 via Android
    一般家庭用路由器里刷一个就行了。喜欢折腾就是软路由。
    techstay
        25
    techstay  
    OP
       2023-01-18 15:53:36 +08:00
    感谢大家的回复,也学到了不少东西。我折腾了两天,最后果然还是放弃了,cfw 就挺好的,咱不折腾了,享受生活多好😅😅
    techstay
        26
    techstay  
    OP
       2023-01-18 16:31:40 +08:00
    @oneisall8955 clash 其实也没啥难的,我觉得 clash for windows 就挺好的,你可以试试。你如果用的机场的话,谷歌搜一下订阅转换之类的关键字,应该就有把配置文件转换成 clash 格式的功能,如果怕在线的服务有问题,应该也有那种本地离线转换的工具。

    clash 配置起来其实也不算麻烦,文档其实写得挺清楚的,看看就会了。clash 的配置文件重点是 proxy groups 、proxy provider 、rules 这几部分,别的都可以在 cfw 里面用图形化配置。

    https://docs.cfw.lbyczf.com/contents/quickstart.html
    https://github.com/Dreamacro/clash/wiki/Configuration

    proxy provider 一般机场提供的和下面的类似,先是两个 auto 类型的自动按延迟选择节点,最后再来个 select 类型的 provider 的允许你手动选择节点,这样在自动节点不好用的时候,能在软件里面手动选择节点。平时就可以手动选择 auto ,让他自动选择。
    ```yaml
    # url-test select which proxy will be used by benchmarking speed to a URL.
    - name: "auto"
    type: url-test
    proxies:
    - ss1
    - ss2
    - vmess1
    # tolerance: 150
    # lazy: true
    url: 'http://www.gstatic.com/generate_204'
    interval: 300

    # fallback selects an available policy by priority. The availability is tested by accessing an URL, just like an auto url-test group.
    - name: "fallback-auto"
    type: fallback
    proxies:
    - ss1
    - ss2
    - vmess1
    url: 'http://www.gstatic.com/generate_204'
    interval: 300

    # select is used for selecting proxy or proxy group
    # you can use RESTful API to switch proxy is recommended for use in GUI.
    - name: Proxy
    type: select
    # disable-udp: true
    proxies:
    - ss1
    - ss2
    - vmess1
    - auto
    ```

    最后一部分就是规则,按这个项目 https://github.com/Loyalsoldier/clash-rules 的说明添加到 cfw 的 mixin 里面就行。rule provider 和 rules 两部分都要添加。记得把它 rules 里面的 PROXY 改成自己定义的 select 类型的 proxy provider 的名字。

    如果有需要的话,还能自己写规则,同样加到 cfw 的 mixin 里面,记得自定义规则往前放放,不然有可能先走其它规则。大体就是这样。
    oneisall8955
        27
    oneisall8955  
       2023-01-21 08:13:13 +08:00 via Android
    @techstay 谢谢大佬,码字不易哈,节后再折腾了🙈
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4807 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 09:56 · PVG 17:56 · LAX 02:56 · JFK 05:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.