很多代理教程只验证IPv4:查询页看到一个新的IPv4地址,就认为所有流量都经过代理。双栈网络中,设备还可能有IPv6地址和默认路由;目标域名返回AAAA记录时,应用可能优先或并行尝试IPv6,从而出现“IPv4走代理、IPv6走本地宽带”的旁路。
旁路是否构成问题取决于业务和安全要求,但首先要准确识别,而不是只隐藏查询页面上的IPv6字段。
一、双栈访问是怎么发生的
| 步骤 | IPv4路径 | IPv6路径 |
|---|---|---|
| DNS结果 | A记录 | AAAA记录 |
| 本地路由 | IPv4默认路由 | IPv6默认路由 |
| 代理能力 | 客户端常见支持 | 需确认代理和客户端支持 |
| 目标连接 | 可能经代理 | 可能经代理或本地直连 |
现代应用可能使用Happy Eyeballs等策略并行尝试IPv6与IPv4,选择更快成功的路径。因此结果不一定每次完全相同。
二、为什么系统代理可能漏掉IPv6
原因可能是:
- 代理服务器只提供IPv4地址或不支持访问IPv6目标;
- 应用不读取系统代理,直接建立IPv6连接;
- PAC或分流规则只匹配IPv4地址或部分域名;
- 浏览器安全DNS返回AAAA后走了不同路径;
- 代理客户端的虚拟网卡只接管IPv4路由;
- 操作系统保留了本地IPv6默认路由。
不能仅凭“SOCKS5支持域名”推断IPv6一定被代理,仍需看客户端如何解析和连接。
三、先检查设备是否真的有IPv6
Windows可查看:
Get-NetIPConfiguration
Get-NetRoute -AddressFamily IPv6
Resolve-DnsName example.com -Type AAAA区分链路本地地址、临时隐私地址、全局地址和默认路由。只有链路本地地址不代表具备完整公网IPv6连接。
四、怎样验证旁路
- 代理关闭时记录IPv4、IPv6和DNS;
- 开启代理并使用新浏览器会话;
- 分别访问只返回IPv4、只返回IPv6和双栈的自有测试端点;
- 查看浏览器网络日志和代理服务端日志;
- 确认IPv6请求是否出现在代理日志中;
- 关闭代理后确认路径恢复。
公共检测页可作辅助,但企业最好使用自有双栈测试端点,避免把浏览器缓存和第三方页面逻辑混进结论。
五、DNS解析和连接路径要分开看
DNS返回AAAA不代表最终一定连接IPv6;反过来,没有在普通DNS日志看到AAAA,也可能是浏览器通过DoH解析。应同时记录解析方式、A/AAAA结果和实际套接字连接。
浏览器安全DNS只改变解析路径,不自动改变公网出口,相关说明见DoH与IP归属地关系。
六、应用级代理如何处理
检查客户端是否支持:
- 代理侧远程解析域名;
- 通过代理访问IPv6目标;
- 阻止未命中规则的直连;
- 对IPv4和IPv6采用一致的分流策略;
- 记录每个连接的目标地址族。
如果客户端不支持完整双栈,应明确限制其使用场景,而不是默默允许IPv6直连。
七、系统级隧道如何处理
系统级方案需要同时下发或管理IPv4与IPv6路由、DNS和防火墙策略。只增加IPv4默认路由不会自动接管IPv6。企业环境还要确认内部IPv6地址段是否应直连,避免破坏内网。
软路由的双栈分流可参考软路由IPv4已变而IPv6仍直连排查。
八、可以直接关闭IPv6吗
临时关闭IPv6可作为对照实验,但不应成为默认长期修复。企业应用、内网、运营商网络和系统组件可能依赖IPv6;盲目禁用会掩盖路由和代理能力问题。
更好的选择是:
- 使用明确支持双栈的客户端和节点;
- 让分流规则同时覆盖IPv4与IPv6;
- 不支持时通过受控防火墙阻止相关应用旁路;
- 记录例外和回退;
- 由网络管理员评估是否需要在特定设备禁用。
九、WebRTC是否会暴露IPv6
浏览器WebRTC可能枚举或使用本地网络候选地址,但现代浏览器的隐私策略会影响展示。是否泄露不能靠旧教程中的固定截图判断,应在当前浏览器和实际通话场景测试。
综合检测见代理DNS、IPv6与WebRTC泄露检查。
十、修复后的验收标准
- IPv4和IPv6的实际路径符合设计;
- DNS解析方式符合组织策略;
- 未被代理的流量是明确批准的例外;
- 代理断开时不会意外永久失网;
- 客户端、系统和服务端日志能够对应;
- 配置有回退方法并经过重启测试。
双栈问题的目标不是“让查询页只显示一个IP”,而是让每类流量都有明确、可验证的路径。






