Asterisk4Magisk / Xray4Magisk

Xray core with service scripts for Android
387 stars 44 forks source link

开启热点时 DNS 污染问题 #65

Closed BioniCosmos closed 1 year ago

BioniCosmos commented 2 years ago

该问题讨论的前提是不使用 IPv6,包括原生和 6to4。

当移动数据 APN 协议开启 IPv6 时,如果 Xray 没有对 IPv6 进行配置,连接热点的客户端大概率会优先使用 IPv6 DNS 服务器,导致污染。脚本中的关闭 IPv6 只对 WLAN 生效,但不影响移动数据的地址获取以及热点的地址分发。

解决方案:

  1. APN 协议关闭 IPv6。
  2. 在 iptables 和 Xray 中对 IPv6 进行相关配置。
  3. 通过脚本在内核层面关闭移动数据网络接口的 IPv6。(未确认是否可行。)
CerteKim commented 2 years ago

测试一下同时 net.ipv6.conf.default.disable_ipv6 = 1 是否能关闭 ipv6

BioniCosmos commented 2 years ago

测试了一下,defaultall 之类的 disable_ipv6accept_ra 都不行,必须指定准确接口。例如,在我的设备上,rmnet_data2(移动数据)和 wlan1(热点)。

不清楚不同设备上接口名称是否相同,我觉得还是通过 iptables 和 Xray 配合启/禁用 IPv6 兼容性较好。