V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
OpenWrt 是一个专门面向嵌入式设备的 Linux 发行版。你可以将 OpenWrt 支持的型号的嵌入式设备,比如各种路由器上的系统,换成一个有更多可能性可以折腾的 Linux 系统。
OpenWrt 官方网站
v7eeaU2MLyWNvp
V2EX  ›  OpenWrt

请教 V 友,目前最新 openwrt 或者魔改 openwrt 整个局域网代理的稳定解决方案有啥?

  •  
  •   v7eeaU2MLyWNvp · 2024-04-28 21:24:57 +08:00 · 3879 次点击
    这是一个创建于 379 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我的需求:

    1. 整个局域网都进行代理,
    2. adguard home DNS 缓存加速
    3. 国内路线走国内 DNS ,国外路线走国外 DNS

    我现在的情况:

    • 目前实现了 1 2 。3 实现没实现不知道。
    • 我是 openclash + adg 。老实说我不是程序员也不太懂,所以各种设置有点混乱。网络现在倒是能跑的通,也能从 adg 看到过滤广告。就算是 1 和 2 实现了。

    怎么实现?

    这两年有没有啥新解决方案?

    • 我最新一版固件是 22 年的了。似乎这两年又有了新产品。稳定运行 2 年了。最近换了节点然后我更新完 openclash 就有问题了。换了 meta 内核,一个是延迟巨高,一个是总有好几个小时的连接自己也不掉,看控制台都能看到接近 1000 个连接。不知道除了 openclash 还有没有别的工具,主要 openclash 真的云里雾里。

    大家都是啥方案?

    • 我知道的方案有那种,openclash + adg + smartDNS 。openclash 进行分流,adg 不但能过滤广告还能记录处理时间啥的,smartDNS 分两组一组处理国内一组国外。
    • 网上的教程,就单单 openclash + adg ,adg 里面的设置方法,我搜到的每个人说的都不一样,有的做 dnsmasq 的上游,有的把 53 重定向到 adg ,我都绕晕了。。。还有 openclash 也是邪门,到底劫持还是不劫持 dns ?有的教程写劫持有的不劫持。怎么准确的知道和设置把 dns 分组?第二 dns 服务器又是什么?追加 dns ,追加上游 dns ,追加默认 dns ,fallback-filter 。就单一个点就四五个设置。。。哎呦喂,这也就是行业内的人才能看得懂了

    所以想问问,你是怎么搞的?当时啃 openclash 就难啃,这个五一别是要再啃几天,网上的资料浩如烟海但真就乱七八糟的让人头大啊。。。谢谢 v 友了。。。

    25 条回复    2024-05-01 00:39:53 +08:00
    xbin
        1
    xbin  
       2024-04-28 21:51:58 +08:00
    隔壁恩山论坛, 搜索"adguard home" ,有一大堆方案,挑合适自己的
    我是旁路由 passwall2 + Adguard Home + mosdns
    yyzh
        2
    yyzh  
       2024-04-28 21:56:07 +08:00 via Android
    同完全看不懂 clash 的配置.所以现在在用 passwall2.封广告啊 dns 分流啊全都是它干.路由器买的 mt6000 自带 openwrt 界面.保证了绝对的稳定
    leloext
        3
    leloext  
       2024-04-28 21:58:25 +08:00
    openclash+mosdns ,openclash 全部指定 mosdns 为上游,mosdns 做好分流。
    Puteulanus
        4
    Puteulanus  
       2024-04-28 22:04:27 +08:00
    passwall + smartdns 就行,passwall 现在内建 ChinaDNS-NG ,第三点就是它做的

    ChinaDNS-NG 的逻辑是通过两个名单来选择查询逻辑,国内白名单只走国内 DNS 查,国外被墙名单只走可信 DNS 查,其他的两个 DNS 都走,如果国内 DNS 返回了国内 IP 就用国内的,否则用可信 DNS 的

    所以 ChinaDNS-NG 需要两个上游 DNS ,一个国内 DNS ,一个可信 DNS 。这个也就是 smartdns 里第二 DNS 服务器的作用,它一个插件可以跑两个 DNS 起来,通过分组设置一个向国内查询,一个向国外查询

    这样说应该好理解吧
    v7eeaU2MLyWNvp
        5
    v7eeaU2MLyWNvp  
    OP
       2024-04-28 22:05:45 +08:00
    @xbin #1 那我多抄几本作业
    @yyzh #2 这个插件有新功能了?那我要瞅瞅,这个路由自带 op 也不错。谢谢提供
    @leloext #3 mosdns 也是才看到,谢谢了,我搜搜看
    explorerproxy
        6
    explorerproxy  
       2024-04-28 22:07:59 +08:00
    openclash 的配置项真的是太繁杂了
    我是基本默认配置+订阅转换能稳定跑起来就没管了
    v7eeaU2MLyWNvp
        7
    v7eeaU2MLyWNvp  
    OP
       2024-04-28 22:13:57 +08:00
    @Puteulanus #4 说的很好,我再看看 pw ,谢谢
    v7eeaU2MLyWNvp
        8
    v7eeaU2MLyWNvp  
    OP
       2024-04-28 22:22:56 +08:00
    @explorerproxy #6 虽然很繁杂,但有些功能确实有用。典型程序员打补丁做法,屎山不想动,然后新建一个 tab ,这个里面第 1 个按钮补充屎山第 2 个 tab 第 3 个按钮的功能,第 2 个按钮补充第 4 个 tab 第 5 个按钮的功能。。。哎。。。节哀。。。
    465456
        9
    465456  
       2024-04-28 22:29:36 +08:00
    要整个局域网代理,代价比较大,例如机场节点翻车,网络就废了一大半
    v7eeaU2MLyWNvp
        10
    v7eeaU2MLyWNvp  
    OP
       2024-04-28 22:30:46 +08:00
    @465456 #9 肯定要有规则的么
    leloext
        11
    leloext  
       2024-04-28 22:33:01 +08:00   ❤️ 1
    @v7eeaU2MLyWNvp openclash 的界面的确一言难尽,我都是直接写 config 的,一次写完之后基本上不用再动了(我是自建而不是订阅)
    zhaidoudou123
        12
    zhaidoudou123  
       2024-04-28 23:40:53 +08:00
    我之前用 openwrt 的时候也用不明白 openclash ,换了 passwall 挺好的
    LaoDahVong
        13
    LaoDahVong  
       2024-04-28 23:48:16 +08:00
    惭愧的说 passwall, clash 什么的我一直都很疑惑, 咋没啥文档, 从来没弄明白怎么玩过. 感觉也好臃肿. 同样的吐槽给到 v2rayNG...
    我都是直接一个 init script 挂上 xray 配合 iptable 做透明代理...
    wcnmm
        14
    wcnmm  
       2024-04-29 00:47:00 +08:00
    @leloext 写 config+1 写完了三端通用感觉还行。
    wcnmm
        15
    wcnmm  
       2024-04-29 01:11:29 +08:00   ❤️ 1
    折腾过一次 简单回答一下吧 (提到的问题较多,我选个感兴趣的回答)
    面板里的 1000+连接源于 keep-alive-interval ,像 fcm 和 ios 推送需要保持长连接,如果一直探测设备是否在线会比较耗电,所以这个时间设置的比较长,连接是否中断会更新的不及时。
    https://github.com/MetaCubeX/mihomo/issues/715

    adg+clash 分为两种(这里默认 clash 用的 fake-ip ,一般只对 geosite-cn 进行 dns 查询。如果用 redir-host 可选择套个 dns 插件进行缓存加速+防泄露,配置的当也是不需要套的)
    设备→adg→clash (这种情况需要 adg 进行 dnsmaq 劫持/转发,做上游客户端排行只能显示 127.0.0.1 ,防火墙转发能显示设备列表。clash 不劫持 dns )
    设备→clash→adg ( clash 劫持 dnsmaq ,adg 劫持选择无,客户端排行只能显示 127.0.0.1 )

    关于 openclash 里面的 “追加上游 DNS” 和 “追加默认 DNS” 勾选的方框底下都是有写功能的,你可能没看过 clash 官方文档,不了解 nameserver 和 default-nameserver 这些关键字,如果你想用好,我还是推荐你看一下 clash.meta 的官方文档。

    如果还有不了解的欢迎讨论,说错的地方也麻烦指正
    v7eeaU2MLyWNvp
        16
    v7eeaU2MLyWNvp  
    OP
       2024-04-29 01:56:51 +08:00
    @wcnmm #15 哎呦喂,非常感谢您的指点,写了这么多,辛苦了哈。我在逼着我自己看他们那个文档,希望能看懂😂。您说的这些我先记下了,后面我试试,谢谢啊。
    y1y1
        17
    y1y1  
       2024-04-29 02:45:17 +08:00 via iPhone
    https://blog.skk.moe/post/i-have-my-unique-dns-setup/
    参照这个做分流,然后把 clash 的 dns 设置为 smartdns 就行了
    JensenQian
        18
    JensenQian  
       2024-04-29 04:27:01 +08:00 via Android
    屏蔽广告建议用浏览器插件+手机上李跳跳这种的
    代理别折腾 clash,直接 passwall,整个好点的 vps 就完事了
    v7eeaU2MLyWNvp
        19
    v7eeaU2MLyWNvp  
    OP
       2024-04-29 05:16:08 +08:00
    @y1y1 #17 给跪了,硬核命令流,我先存起来,争取五一之内看懂一丢丢
    x86
        20
    x86  
       2024-04-29 07:12:57 +08:00 via iPhone
    openclass 很奇怪,有些设备上相对稳定,有些设备上经常断流
    baobao1270
        21
    baobao1270  
       2024-04-29 08:52:31 +08:00
    1. 为什么觉得「代理」会有稳定的方案,这个东西不受你控制的因素太多了「上游、机房策略、Wall 的策略」,本来就不可能稳定
    2. 需求 3 在理论上不可能完美实现,主流网站可以用 geosite 分流,非主流网站你必须拿到 IP 才能知道是「国内」还是「国外」,那么你拿 IP 的这个操作找哪个 DNS 呢?
    3. 两年前我的方案是 xray -> dnsmasq (w/ geosite loaded) -> dnscrypt2
    EvineDeng
        22
    EvineDeng  
       2024-04-29 12:11:17 +08:00
    QeMPdEW178ZNV025
        23
    QeMPdEW178ZNV025  
       2024-04-30 13:12:16 +08:00   ❤️ 1
    adg 选择用 53 端口替换 dnsmasq ,此时一般会自动把 dnsmasq 改成 1745 ,adg 里填写上游 dns 服务器为 127.0.0.1:1745
    oc 不用劫持 dnsmadq ,手动把 dnsmasq 的转发填写为 oc 的 dns 端口 7874

    整个 dns 流程就是客户机>adg>dnsmasq>openclash>上游 dns 服务器

    至于 dns 分流,要么套娃,要么用配置文件实现

    可以使用我自用的这个配置: https://github.com/Aethersailor/Custom_OpenClash_Rules

    其中 dns 设置的部分按照我上面说的设置,其他设置按照仓库里转载的那个教程贴设置
    v7eeaU2MLyWNvp
        24
    v7eeaU2MLyWNvp  
    OP
       2024-04-30 23:07:34 +08:00
    @lostman1337 这两天我连猜带蒙脑补了一点点网络知识,刚看完两种设置方式,还在画图总结,还没弄完。
    您这是第三种。就您这个我还不太好理解,您这个 1745 端口在一些别的包里面是不是 adg 的 5553 ?
    目前我才在楞猜 劫持 转发 重定向 这些词是啥意思呢。。。

    您这个是,流量本来应该到 dnsmasq 或者说 53 端口,您把 adg 和 dnsmasq 端口调换了。
    流量先到 adg 结果 adg 设置上游 1745 ,这样又回到了 dnsmasq 的 53 ;
    dns 又手动填写转发到 oc 的 7874 ,这个好像跟 oc 设置下是一样啊;
    后面的设置貌似要更深入学习了。

    您这个设置亮点是把 adg 和 dnsmasq 调换了,虽然多了一层不容易理解不好设置,这是为了所有流量一来就先过滤一遍吧。。。后面的设置我再学习学习。。。谢谢大佬了
    QeMPdEW178ZNV025
        25
    QeMPdEW178ZNV025  
       2024-05-01 00:39:53 +08:00
    @v7eeaU2MLyWNvp 有的包是 5553 ,有的包是 6060 ,有的包是 1745 ,这个区别不大,只要两头设置一样就没问题
    让 adg 在 53 是为了让 adg 能够按照设备来显示 dns 请求,同时因为 adg 有乐观缓存,理论上这样性能最好
    不跳过 dnsmasq 也是为了避免一些问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1023 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:01 · PVG 03:01 · LAX 12:01 · JFK 15:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.