Mihomo 和 SingBox 关于 Real-IP 在代理挂掉情况下的解析问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ENE
V2EX    DNS

Mihomo 和 SingBox 关于 Real-IP 在代理挂掉情况下的解析问题

  •  
  •   ENE 15 天前 2083 次点击

    起因是最近代理不稳定,发现代理节点挂掉,国外的 DNS 无法正常工作情况下,国内部分小众域名将会无法解析(不在 geosite:cn 列表中),一部分可以直连国外网站也会无法解析.
    在设置为 规则模式走 Direct 和 Direct 模式情况下,依然无法解析,才发现 Real-IP 在这种情况下有解析问题。


    我们以 Mihomo 内核举例:

    • 首先 规则模式走 Direct 和 Direct 模式 都是在分流层面事情,DNS 解析依然会走 DNS 规则
    • 其次,在 mihomo 内核中,需要代理域名解析到 IP 是错误也不太会影响分流结果( IP 规则除外),因为给远端(节点)是域名
    • 至于 Fallback 我们在这里并不做讨论(因为发送给远端是 IP 而并非域名,所以被排除掉了)
    1. 情况一、为了防止 DNS 泄露,一般除了国内域名( geosite:cn ),都是使用 EDNS+国外 DNS 方式查询( NameServer ),有些可能设置了 direct-nameserver (不影响结果)

      • 在这种情况下,只要国外 DNS 无法解析,就会出现开头所诉情况,即使设置 direct-nameserver 下,国外 DNS 那一关过不去就无法分流。
    2. 情况二、geosite:gfw 全走国外 DNS ,其他 NameServer 都是使用国内 DNS 查询( NameServer ),有些可能设置了 direct-nameserver (不影响结果)

      • 这种情况下会好点,虽然会有 DNS 泄露问题,但是仅限于 geosite:gfw 无法解析了

    SingBox 内核也有相同问题,但是会比 Mihomo 情况好很多(因为可以手动设置解析逻辑,就是比较掉头发罢了)

    • SingBox 可以手动设置 Direct 模式使用的 DNS

    而 Fake-IP 在这点上就没问题了,直接给客户端发送假 IP ,直接跳到分流层面上;
    不必在意 NameServer 是国内还是国外,需要代理域名直接给代理节点发送域名( 99%情况不会发送 IP 的);
    而直连域名就通过内核配置 DNS 解析 IP ,由内核中转发送到目标

    所以有没有一种方式,当解析超时时候,发送 Fake-IP ,直接到分流层次;或者可以设置 FallBack (此 FallBack 非彼 FallBack )

    10 条回复    2026-04-07 14:39:16 +08:00
    butanediol2d
        1
    butanediol2d  
       15 天前
    为什么 Fake IP 没问题? Mihomo 只在遇到 IP 规则的时候才会去解析域名的 IP ,这一点无论是否使用 Fake IP 都是一样的吧?

    除非软件非要自己解析 IP ,不然一般走 socks/http 代理的时候,软件都会直接把域名交给代理。我感觉理论上是否用 Fake IP 都不影响。
    ENE
        2
    ENE  
    OP
       15 天前 via Android
    @butanediol2d 因为软件域名解析超时拿不到 IP ,直接报错了; 而 FAKEIP 直接发假 IP 不会有这个问题
    ENE
        3
    ENE  
    OP
       15 天前 via Android
    @butanediol2d 你说的仅限于 sock 和 http ,如果是 tun 或者 tproxy 模式的话就是我上面说的
    cairnechen
        4
    cairnechen  
       15 天前
    @ENE sing-box 规则 reject 的时候也会遇到这个问题吧,但是我记得有个兜底策略,连续请求多少次就直接 drop 不 reject 了
    ENE
        5
    ENE  
    OP
       15 天前 via Android
    @cairnechen 对,reject 的是这样。我现在是吧国外 DNS 单独设置一个组,通过 Auto urltest 选择一个可用节点代理 DNS
    butanediol2d
        6
    butanediol2d  
       15 天前
    @ENE 哦那确实,但是我感觉 TUN 模式的话推荐用 fake ip 吧。
    Augix
        7
    Augix  
       15 天前
    都 Real-IP 了还用什么代理软件的 DNS 。
    ENE
        8
    ENE  
    OP
       15 天前
    @Augix 说的是不在 CN 列表中,但是是 CNIP 的域名,走的国外 DNS 解析,代理挂了不就拿不到 IP 了吗
    还有就是国外域名在!CN 列表里,走的国外 DNS 解析,但是可以直连访问,同样不就拿不到 IP 了吗
    gswgudujian
        9
    gswgudujian  
       14 天前   1
    套娃太多了 一个 singbox 就解决了
    user100saysth
        10
    user100saysth  
       14 天前
    lOGW,
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5636 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 44ms UTC 07:32 PVG 15:32 LAX 00:32 JFK 03:32
    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