浏览器应用中的 IPv6 地址选择
说明操作系统与浏览器如何在 IPv6 和 IPv4 之间选择,如何设计可用性回退,以及隐私边界。
双栈网络可能同时提供 IPv6 和 IPv4 路径。网页通常只提供主机名,而不是可供枚举的地址列表。操作系统执行地址选择策略,浏览器管理连接尝试。一次连接中使用的地址只是该次网络条件的结果,不能证明用户的身份或位置。
谁参与选择
DNS 可以返回 IPv6 的 AAAA 记录和 IPv4 的 A 记录。RFC 6724 描述默认选择策略,但本地配置和实现会不同。RFC 8305 描述的 Happy Eyeballs 方法可能以短暂间隔尝试两个地址族,减少用户可见等待。顺序和延迟不是稳定的浏览器属性。
可用性是运行时条件
主机启用 IPv6 不代表每个网络、防火墙、隧道或目的端都可达。应用应观察自身请求结果,而不是枚举接口或候选地址。保留完整的基础流程,让平台选择路径;错误时进行有限回退并保留已输入的数据。不要假定 IPv6 总是更快、更安全或可用。
隐私边界与测试
浏览器负责建立或复用连接,操作系统管理接口、路由和部分 DNS;代理或 VPN 还会增加一层。网页没有可移植的本地 IPv6 地址清单 API。IP 地址在具体场景中可能属于敏感连接数据,遥测应优先记录 timeout、fallback-used 等短期结果并限制留存。不要据此推断国籍、居住地、身份或设备类别。
在自有控制端点测试 IPv6、IPv4、双栈及可控故障,记录测试环境和回退行为,不作普遍兼容性承诺。
浏览器与系统边界
浏览器和操作系统共同负责解析与连接;网页只应观察请求结果。
运行清单
保持主机名和安全传输为应用契约,让平台选择地址;IPv6 路径失败时执行有限的 IPv4 回退或一次有界重试,并以最少留存记录粗粒度结果。
网络切换可能改变下一次连接,但不会改变会话身份。
代理或 VPN 到达目的端时可能使用另一地址族,应测试服务结果。
保留表单数据;两条路径都失败时提供可访问的恢复操作。
来源
延伸阅读:DNS 泄漏防护和 IPv4 与 IPv6 代理一致性。