logo NodeSeekbeta

【求助】CF优选域名本地 dig 无法分线路解析,但第三方网站解析ok

基础环境:
系统:OpenWrt
插件:OpenClash

配置背景:
我目前在做 Cloudflare 优选 IP,并将优选 IP 绑定到了自定义域名(例如 a.com),做成了优选域名。
在该域名的 DNS 解析处,我配置了分线路解析(例如:联通线路指向联通优选 IP,移动线路指向移动优选 IP,并设置了一个默认线路 IP)。

遇到的问题:
本地测试异常: 我在本地终端使用 dig @不同运营商DNS a.com 进行测试时,无论指定哪个运营商的 DNS,返回的始终是“默认线路”的 IP。
第三方测试正常: 但是,当我使用第三方拨测网站(如 ITDog、Ping.pe 等)去解析该域名时,分线路解析是完美生效的(联通节点确实解析到了联通优选 IP,移动也一样)。

OpenClash 会劫持本地所有 53 端口的 DNS 请求,应该如何配置 OpenClash 排除这种干扰?提前感谢各位大佬指点!

  • 换设备 ok 说明配置本身没问题,补一下原因和一个不用换设备的验证法。

    dig @某某DNS 在 OpenClash 底下是不作数的。53 被透明劫持之后,@ 后面写谁都一样——请求压根没发到那台 DNS,答你的始终是 OpenClash 自己那套上游。所以你看到的「默认线路」,其实是它上游出口落在哪条线的结果,跟你指定的运营商 DNS 无关。

    一秒钟验证:

    dig @192.0.2.1 a.com
    

    192.0.2.0/24 是 RFC 5737 的保留测试段,那个地址上不可能有 DNS。只要它还能返回结果,就说明查询被劫持了,这时候之前所有 dig @xxx 的结论都作废。

    要在本机验证分线路配得对不对,别绕本地这一圈,直接问权威:

    dig +short NS a.com
    dig @<上面拿到的权威ns> a.com +subnet=<某运营商的一个IP>/24
    

    换不同的 +subnet 就能看出各条线返回的是不是你配的那个 IP。这条路问的是权威服务器本身,不经过本地那套劫持,也不受上游出口影响。

    (顺带:智能解析判线路看的是递归解析器的出口 IP,不是你的客户端 IP。ITDog 那类拨测站准,是因为探针物理上就在那条线里、用的也是当地递归——不是它们做了什么特别的事。)

  • 分流 将你的优选域名走直联

  • faip 加了跳过了,直连也配置了

  • 换设备ok,应该没问题

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有71828位seeker

🎉欢迎新用户🎉