Closed leeaash closed 5 months ago
proxy配置的ip-version: ipv4貌似只影响mihomo与节点服务器的连接,而不影响节点与目标网站的连接。
如果ip-version不适用,还有何种配置方式或方法可选?苦恼啊
我也在思考这个问题,不过我只有访问纯ipv6网站才需要选择支持v6的节点。访问双栈网站时没有感受到明显的影响。
但你在访问fb时,似乎在本地发起了DNS解析,这说明你规则配置可能有问题。fake ip模式下,由节点服务器发起解析,节点不支持v6,也就不会试图访问v6。
你需要检查 RULE-SET,Apple Services RULE-SET,Special Custom RULE-SET,Go2US 之中,是否存在未加no-resolve的ip规则,这会导致你访问的fb在本地被解析,从而获取到节点无法访问的v6地址。
谢谢解答,再检查了一下,可以上都没有no-resolve的配置,所有payload都是域名
ip-version只能控制内核本身产生的流量出站,发给节点的流量是没法控制的 如果你需要分流ipv6,请使用规则匹配全部ipv6,例如ip-cidr,::/0,proxy
我才注意到:
dns: enable: true ipv6: false
按照我的理解,这样fb等网站是不会在本地被解析出ipv6的。
还有一种可能,就是设备没有设置好ipv6的DNS。
比如,假如你用旁路由,底下设备的ipv4 DNS正确指向了旁路由,但ipv6 DNS指向了主路由。如果没法手动修改,就需要看教程,用DHCP指定设备的ipv6 DNS。
总之,感觉问题还是与DNS解析有关。
没有旁路由,mihomo跑在主路由上,主路由设置也不解析AAAA记录。我怀疑是终端通过外网的ipv6地址请求到了AAAA的记录,只是还没找到直接证据
ip-version只能控制内核本身产生的流量出站,发给节点的流量是没法控制的 如果你需要分流ipv6,请使用规则匹配全部ipv6,例如ip-cidr,::/0,proxy
我不想分流啊, 没有ipv6代理出口也没法分流啊
@leeaash 那你就先把有v4的分了,剩下的direct
@leeaash 那你就先把有v4的分了,剩下的direct
fb的ipv6也是被墙的吧?
@leeaash 双栈域名匹配到之后就分走了啊,不会匹配到后面的v6
@leeaash 双栈域名匹配到之后就分走了啊,不会匹配到后面的v6
开了sniffer,ipv6地址会匹配域名优先走域名规则,貌似不是通过fake ip发起的访问。
@leeaash 用sub rule,把有ipv4的分到sub rule,再分 要么干脆别分,不能访问就不能访问,这不是一个bug
Verify steps
Operating System
Linux
System Version
Linux OpenWrt 5.15.137
Mihomo Version
Mihomo Meta alpha-d96d765 linux amd64 with go1.22.4 Thu Jun 13 01:07:28 UTC 2024 Use tags: with_gvisor
Configuration File
Description
全局配置ipv6时,IPv6流量会走不支持IPv6的proxy,即使proxy已配置了ip-version: ipv4. 感觉跟手机app也会有关系,访问facebook和instagram可以看到此类问题
Reproduction Steps
目前观察使用facebook系的app比较容易复现
Logs