发一个 openclash 与 Mosdns 和 AdguardHome 的配置,大家看看 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
murchef
V2EX    DNS

发一个 openclash 与 Mosdns 和 AdguardHome 的配置,大家看看

  •  
  •   murchef 2023-02-06 22:59:30 +08:00 15918 次点击
    这是一个创建于 986 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天在 openclash 的项目讨论里发过,这边热闹一点就也发份在这里

    在较新版本的 openclash 里,Yacd 和 dashboard 面板里无法显示域名,测试发现 openclash 的 Dns 劫持里要打开防火墙转发才能显示域名

    但分流正常,例如打开油管是能正常从 mosdns 里得到解析,adguardhome 日志里有,openclash 的 dashboard 能显示规则,能正常分流,就是 dashboard 的域名一栏只有解析后的 ip ,没有域名

    今天在备份好 openwrt 系统后反复修改这三个的配置,现在找到一个能用的,所以发出来给大家看看有没有问题

    openclash 设置

    redir-host 兼容

    Dns 设置

    1.dns 劫持 防火墙转发

    2.自定义 dns 设置为 127.0.0.1:1745 (adguardhome 监听端口 nameserver 和 fallback 均相同)

    mosdns 设置

    监听端口为 0.0.0.0:6010 (我的 mosdns 设置参照 easymosdns 这个项目)

    AdguardHome 设置

    1.重定向为 无

    2.监听端口为 1745

    1. dns 设置为 mosdns 的端口 127.0.0.1:6010

    修改后 我认为是从 openclash 》 adguardhome 》 mosdns 的顺序 现在 adguardhome 正常日志,mosdns 正常解析,openclash 正常分流且 dashboard 显示域名

    26 条回复    2023-07-12 15:15:29 +08:00
    xuesumin
        1
    xuesumin  
       2023-02-07 07:28:30 +08:00 via iPhone
    不理解这样搭配的原因,openclash 本来就能 dns 分流,为何需要 mosdns 再做一次? Adguardhome 基于 dns 域名的去广告功能,在 openclash 配置文件加上去广告规则不就好了?
    arfaWong
        2
    arfaWong  
       2023-02-07 08:39:08 +08:00
    搞了台 Linux 服务器做代理的网关。
    DHCP 直接分配这台服务器做 DNS 服务器。adg 53 --> mosdns 5335 分流到国内、国外的 DOH 。
    主路由 ROS 将非中国大陆 IP 的流量转发到这台服务器,Clash.Meta 通过 iptables 和 tproxy 透明代理流量。
    arfaWong
        3
    arfaWong  
       2023-02-07 08:39:53 +08:00
    @arfaWong Clash.Meta 关闭 DNS 监听和劫持。
    jeanz
        4
    jeanz  
       2023-02-07 09:30:48 +08:00
    @xuesumin #1 mosdns 可以把国内 /国外解析分开,加上 Adguardhome 界面便于查看记录
    wangerka
        5
    wangerka  
       2023-02-07 11:30:47 +08:00
    你这终极套娃属于是。我自己写规则,有的节点不咋好所以没做分流,基本够用
    ![]( )
    yick
        6
    yick  
       2023-02-07 12:38:24 +08:00 via Android
    adgh 直接听 53 ,上流是 openclash 不好吗
    HalloCQ
        7
    HalloCQ  
       2023-02-07 15:16:33 +08:00
    属实有点套娃
    其实只需要 Adguardhome 就能完全实现 dns 分流,去广告,以及查看 dns 解析日志 的功能
    murchef
        8
    murchef  
    OP
       2023-02-07 15:30:22 +08:00 via Android
    @HalloCQ 之前有用 adguardhome 的分流,用国内域名全走 223 其他走海外的方案,但还是比不上 mosdns 的方案,且缓存有时候用了会出问题,所以现在只用它做解析日志&去广告
    murchef
        9
    murchef  
    OP
       2023-02-07 15:31:02 +08:00 via Android
    @yick 试过,有问题好像
    murchef
        10
    murchef  
    OP
       2023-02-07 15:33:44 +08:00 via Android
    @arfaWong 未来可能去玩玩 ros ,现在先琢磨琢磨 openwrt
    murchef
        11
    murchef  
    OP
       2023-02-07 15:36:55 +08:00 via Android
    @yick 具体设置是什么,现在 openclash 不在 dns 劫持里开防火墙转发,面板就有问题,昨天试了很久
    yick
        12
    yick  
       2023-02-07 17:07:31 +08:00
    @murchef 两个方案
    1.不开劫持,OC 自定义 DNS 打开端口 default ,name servers 及 fallback 正常设置; adgh 重定向到 53 ,上游设置为 127.0.0.1:( OC DNS 端口)
    2.不开劫持,OC 自定义 DNS 打开端口 default ,name servers 及 fallback 正常设置;想办法让 adgh 直接接管 53 端口(一般是 dnsmap/oc 可能回有占用,可能修改一下它们的防火墙 rule 可以),上游设置为 127.0.0.1:( OC DNS 端口)
    nkcfc
        13
    nkcfc  
       2023-02-08 06:50:23 +08:00 via Android
    oc 自带的是不是会泄露 dns ?比如我查询 xxx.com ,它会用两组 dns 查询,然后国内的 isp 服务商就知道我查询过了,当然用 doh 可以只让 dns 服务器知道,不过还是不爽。
    riverdolphin
        14
    riverdolphin  
       2023-02-08 15:39:04 +08:00 via Android   2
    我同时使用 adgardhome, openclash, mosdns.
    因为过滤广告是基于域名的,所以 adgardhome 先过滤广告,再通过 openclash 分流,再通过 mosdns 解析。

    1 、重定向 53 到 adg ,关闭缓存,只做过滤,上游填写 openclash 的 dns 服务端口。
    2 、openclash 的 dns 上游填写 mosdns 的端口,关闭缓存,不要劫持。
    3 、设置 mosdns 分流解析,设置缓存策略,国外域名的 dns 记得加入到 openclash 的白名单强制走代理。
    murchef
        15
    murchef  
    OP
       2023-02-08 16:11:41 +08:00 via Android
    @riverdolphin 好像试过,你看看 dashboard 和 yacd 面板里有没有显示域名
    riverdolphin
        16
    riverdolphin  
       2023-02-08 19:23:54 +08:00 via Android
    @murchef 那你检查一下 iptables ,看看哪里有规则把 dns 请求劫持了。我的设置用起来很顺畅。
    duetg
        17
    duetg  
       2023-02-08 22:36:00 +08:00 via iPhone
    openclash 的依赖都没问题的话(留意 iptables 和 nftables 的依赖是不同的):
    1 、路由系统,在防火墙的端口转发里,把路由的 53 端口 udp 转发到 adguard home 设置的监听端口(比方 5335 )
    2 、adguard home ,把 dns 上游设置成 openclash 的监听端口(默认是 7874 )
    3 、openclash ,使用 redir 模式的话,取消 dns 劫持,开启自定义上游 dns (默认的一般就够用了)
    这样配置的话 dns 请求从 53 到 adguard home 并被过滤,然后再转到 openclash 去分流,比较简单也可靠。套多了慢还不稳。
    murchef
        18
    murchef  
    OP
       2023-02-08 23:29:27 +08:00 via Android
    @riverdolphin ok ,这方案有效
    mac100
        19
    mac100  
       2023-02-10 00:40:42 +08:00
    @murchef 懵圈了那种方案好啊。??
    mac100
        20
    mac100  
       2023-02-10 14:22:52 +08:00
    @riverdolphin 这方案 好像微信 好卡。转圈。
    helb
        21
    helb  
       2023-02-28 19:33:29 +08:00
    @riverdolphin 请问如果我只用 mosdns openclash 是不是可以
    1 openclash 的 dns 上游填写 mosdns 的端口,关闭缓存,打开劫持
    2 设置 mosdns 时 DNS 转发是否需要打开
    lastczj
        22
    lastczj  
       2023-03-19 01:09:02 +08:00
    @helb 1.建议关闭 openclash 的 DNS 劫持
    2.打开 mosdns 的 DNS 转发

    如果 openclash 打开 DNS 劫持,mosdns 打开 DNS 转发,最终导致哪个最后启动就会修改 Dnsmasq 的 DNS 转发
    helb
        23
    helb  
       2023-03-20 09:52:18 +08:00
    @lastczj 感谢您的耐心解答 但当我采用了您的方法 关闭 openclash 的 DNS 劫持,打开 mosdns 的 DNS 转发后 出现国外媒体( nf 和 D+)无法播放提示错误的情况
    可能是因为我开启了 ipv6 的原因

    当我采用开启 op 的 dns 劫持后(关闭 DNS 缓存) 一切恢复正常 即使在主、旁路由都开启 ipv6 的情况
    xpn282
        24
    xpn282  
       2023-05-18 20:20:04 +08:00
    @helb 关闭 OpenClash 的劫持,mosdns 的远程 dns 要填 127.0.0.1:7874 ,这样 OpenClash 才能正常工作
    hongyichao
        25
    hongyichao  
       2023-07-12 04:06:37 +08:00
    加 mosdns 主要是为了配合 fake-ip 吧? redir 模式应该不用套 mosdns
    murchef
        26
    murchef  
    OP
       2023-07-12 15:15:29 +08:00
    @hongyichao #25 不是,只是为了 dns 能自己控制
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1178 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 23:53 PVG 07:53 LAX 16:53 JFK 19:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86