如果家里的代理方案是“路由器跑 mihomo / Clash Meta,所有设备通过 WiFi 透明分流”,iPhone 上有几个系统级网络开关会直接影响稳定性。
这类问题最典型的表现是:网页和大多数 App 都正常,但 App Store 偶尔加载不出来、应用更新不稳定,或者 Instagram / YouTube 这类流媒体 App 刷着刷着卡住。表面看像节点问题,实际经常是 iOS 没有完整服从路由器的 DNS 和分流路径。
核心目标只有一个:让 iPhone 的 DNS 查询和实际连接都交给路由器,由 mihomo 统一做 fake-ip、规则匹配和出口选择。
推荐设置
进入:
设置 -> Wi-Fi -> 当前 WiFi -> 信息(i)
建议配置如下:
| 设置项 | 推荐值 | 原因 |
|---|---|---|
| DNS | 手动:路由器 IP(示例:192.168.6.1) | 明确把 DNS 交给路由器,避免走运营商、DoH App 或系统隐私路径 |
| 限制 IP 地址跟踪 | 关闭 | 避免 iCloud Private Relay 相关机制干扰本地 DNS / 透明代理 |
| HTTP 代理 | 关闭 | 透明代理场景不需要在 iOS 再手动套一层 HTTP 代理 |
| 低数据模式 | 关闭 | 避免 iOS 限制后台更新、预加载和媒体请求 |
| 自动加入 | 开启 | 保持家庭 WiFi 自动连接 |
| 专用 Wi-Fi 地址 | 固定或关闭 | 如果路由器要识别设备,避免 MAC 轮换造成策略错配 |
如果路由器上没有按 MAC 做固定 IP、白名单或设备策略,专用 Wi-Fi 地址 可以用 固定。
如果路由器上做了 DHCP 静态绑定、设备白名单、按设备分流,建议把 专用 Wi-Fi 地址 关掉,或者至少不要使用 轮换。iOS 18 以后这个选项通常有 关闭 / 固定 / 轮换,其中 轮换 会周期性变更 MAC 地址,路由器可能会把同一台 iPhone 当成新设备。
为什么要关掉“限制 IP 地址跟踪”
限制 IP 地址跟踪 不是普通的隐私开关。它和 Apple 的 iCloud Private Relay / 隐私代理能力有关,会尝试隐藏设备的公网访问特征。
这对普通 WiFi 使用没问题,但和路由器透明代理有天然冲突:路由器希望看到完整的 DNS 查询和连接目标,然后按 mihomo 规则决定直连或代理;iOS 隐私层则可能把部分 Apple / Safari / 系统流量改道,导致路由器看到的流量不完整,或者看到的域名、IP、连接路径和实际 App 行为不一致。
App Store 就是容易受影响的场景。它既依赖 Apple 账号、商店 API、CDN、证书校验,又对地区、出口 IP、DNS 结果比较敏感。如果一部分请求走路由器直连,另一部分请求走 Apple 隐私路径或异常出口,就容易出现“能打开但更新不稳定”“搜索加载慢”“偶发无法连接 App Store”。
在家庭 mihomo 路由器场景下,关闭当前 WiFi 的 限制 IP 地址跟踪 更稳定。
DNS 为什么要手动填路由器
路由器上的 mihomo 通常会接管 DNS,例如:
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-filter:
- "rule-set:apple_domain"
- "rule-set:cn_domain"这种配置的关键点是:DNS 不只是解析域名,它还是分流系统的一部分。
比如 Apple / 国内 CDN 域名应该返回真实 IP 并直连;Google / Telegram / Instagram 这类域名可以返回 fake-ip,再由 mihomo 根据规则选择代理节点。如果 iPhone 自己用了别的 DNS,例如运营商 DNS、NextDNS、AdGuard DNS、某个 VPN App 的 DNS,就可能绕开路由器的 fake-ip 和 rule-set 逻辑。
所以家庭 WiFi 下,DNS 手动填路由器的 LAN IP 是合理的。本文示例里的 192.168.6.1 是我的路由器地址,不是通用固定值,实际填写时应替换成自己的路由器 IP。
不建议同时开启的东西
如果目标是让 iPhone 完整走路由器分流,下面这些东西最好不要同时开:
- Shadowrocket / Surge / Loon / Quantumult X 的系统 VPN
- AdGuard 的本地 VPN 模式
- NextDNS / AdGuard DNS / 其他加密 DNS 描述文件
- iCloud Private Relay
- 当前 WiFi 的
限制 IP 地址跟踪 - HTTP 代理手动配置
不是说这些工具不好,而是它们会和路由器透明代理争夺“谁来决定 DNS 和出口”。一条链路里有两个分流系统同时工作,排障会非常困难。
App Store 的推荐状态
如果 App Store 更新不稳定,优先确认这些设置:
- 当前 WiFi 的
限制 IP 地址跟踪已关闭。 - DNS 手动填路由器 IP,例如
192.168.6.1。 - 没有开启 iOS 系统 VPN。
- 没有安装会接管 DNS 的描述文件。
- 路由器 mihomo 里 Apple 相关域名走直连。
路由器侧可以检查:
nslookup -port=1053 apps.apple.com 127.0.0.1理想情况是返回真实的国内 CDN IP,而不是 198.18.x.x fake-ip。
还要看连接路径,不要只看 DNS。mihomo 的 /connections 里,Apple 相关连接应该类似:
rule=apple_domain
chain=DIRECT -> 全球直连如果 DNS 返回真实 IP,但连接链路还是走代理,App Store 仍然可能触发地区或风控问题。
我的最终建议
家庭 WiFi 想让 iPhone 完整走路由器 mihomo,最终状态可以这样定:
DNS:手动填写路由器 IP,例如 192.168.6.1
限制 IP 地址跟踪:关闭
HTTP 代理:关闭
低数据模式:关闭
专用 Wi-Fi 地址:固定或关闭
系统 VPN:关闭
DNS 描述文件:不要启用如果做了这些以后 App Store 恢复正常,基本就说明问题不是 fake-ip 本身,而是 iOS 隐私代理 / DNS 绕行和路由器分流之间冲突。