Openwrt 软路由,电信,双栈公网,每天重新拨号,slaac 分配 v6 地址,没有通告 IPv6 DNS 服务器,启用 过滤 IPv6 AAAA 记录。局域网内设备均可获取内外 ipv4 和公网 ipv6 地址(含临时地址)。 PC 上通过 nslookup 查询,证实无法获取域名的 ipv6 地址。但可以 v6 直连,ipw.cn 远程 ping 也正常。 安卓手机上安装 Termux ,通过 nslookup 查询,也没有获取到域名的 v6 地址。 但是我发现手机端( iPhone 安卓都有)仍然可以是跑 IPv6 流量的(主要是微信),如下图所示。
https://i.ibb.co/pvKLdM1k/v6.jpg https://i.postimg.cc/fLJXkgXR/v6.jpg
所以,手机端到底是如何解析域名 IPv6 地址然后进行沟通的?难道微信流量是默认走自家的 DoT/DoH 加密解析,绕过本地路由的限制吗?
![]() |
1
kk2syc 39 天前 ![]() 微信底层 mars 是自己造 socket 的,不依赖本地 dns 解析,你要说 doh 也差不多,但不是
你可以参考这个资料:微信官方团队 - v6 socket 编程 https://github.com/WeMobileDev/article/blob/master/IPv6%20socket%E7%BC%96%E7%A8%8B.md |
![]() |
2
yyzh 39 天前
正常 APP 都有上 httpdns 的吧
|
![]() |
3
sujin190 39 天前 via Android
不说微信,头部这些 app ,哪个不是自己在 app 里边单独搞的 dns 解析,不走系统默认的那不正常么
|
![]() |
4
JensenQian 39 天前
暴力点,防火墙直接屏蔽手机 ipv6
加 openwrt 路由器的启动项里面,我这是 firewall 的,iptables 的你让 chatgpt 给你换下 手机 mac 地址换成自己手机的,然后 wifi 里面选项里面的随机 mac 关了 firewall-cmd --permanent --add-rich-rule='rule family="ipv6" source mac="手机 mac 地址" reject' |
5
cslive 39 天前
我直接在 ros 防火墙里将手机的 ipv6 流量拦截了
|
![]() |
6
xinge666 39 天前
你只是禁止解析 v6 ,并没有禁止访问啊,现在很多 App 都是自己实现的 DNS 客户端
|
7
yinmin 39 天前 via iPhone
|
9
xhcnb 39 天前
还有些 app 会内置公共 dns 服务器地址, 根本不请求你的路由器
|
10
moefishtang 38 天前
如果是 Android 手机的话,可以把路由器的 IPv6 地址分配方式改成 DHCPv6 ,这样 Android 机器就会因为不兼容 DHCPv6 而获取不到 v6 地址,同时不影响其他设备通过 IPv6 联网
|
![]() |
12
kk2syc 38 天前 ![]() @fuwu1245 可能只是个名字? https://github.com/Tencent/mars
|
![]() |
13
Zy143L 37 天前
微信有自家的 doh 解析 fallback 才会用默认 dns
|
14
Seele0oO 37 天前
你要是想要强制微信这种软件用你的 DNS 服务器,就得阻止所有 doh/dot 链接,并劫持所有明文 DNS 查询。
如果是你不想要 ipv6 ,op 关一下就是了。 |
15
letmefly 36 天前
现在才知道,app 是内置了 DNS 解释。
PC 里的软件会不会也这样? |
![]() |
16
JensenQian 33 天前
|
18
barnettluo1994 33 天前
微信有自己的 dns 解析 用的 httpdns 。 你需要黑洞路由 119.29.29.29 还有几个腾讯的 dns 同时需要屏蔽 dns.weixin.qq.com 同时需要屏蔽 853 端口
|
![]() |
19
157003892 30 天前
ipv6 给客户端断了,随便它咋样都没 ipv6 流量
|