01双栈意味着存在两套地址路径
双栈设备可以同时使用IPv4与IPv6,它们是不同的网络地址体系,可能对应不同的路由与连接条件。
家里能够使用IPv6,不等于访问的每个网站都支持IPv6;某个网站支持两种地址,也不表示它们经过完全相同的网络路径。实际连接会受到设备、应用、解析结果和网络可达性的共同影响。
因此,查看一次出口地址只能说明那次检测采用的路径。浏览器可能用IPv6访问一个检测站,而另一个应用使用IPv4连接业务服务。看到两种不同地址并不必然是软件错误,但如果你的目标是统一出口,就需要分别确认覆盖范围,不能只测试其中一种地址后认为整个设备都已一致。
02A与AAAA记录提供不同候选地址
域名可以通过A记录提供IPv4地址,通过AAAA记录提供IPv6地址。
应用获得这些候选后,还需要决定尝试哪一个。解析记录存在,并不保证对应路径畅通;网络中也可能出现某一种地址族正常、另一种响应缓慢的情况。这会让同一域名在不同设备或应用里表现不同。
有些客户端采用类似Happy Eyeballs的连接策略,通过协调多个候选连接减少用户等待,而不是简单永久固定某一种地址优先。具体实现与时序因软件而异。它能改善部分可达性问题,却不保证每次都选择你期望的出口。因此,理解地址选择机制比把“系统支持IPv6”直接等同于“所有请求走IPv6”更准确。
03代理接管范围需要覆盖对应地址族
如果一套规则或虚拟接口只处理IPv4,而应用仍能直接使用IPv6,就可能出现一部分流量经过代理、另一部分直接连接的情况。
是否构成问题,取决于原本的使用目标和明确配置。对于预期统一出口的任务,这种差异值得检查;对于有意按用途分流的场景,则可能是设计结果。
客户端里的IPv6选项也可能对应不同功能,例如是否返回AAAA记录、是否为虚拟接口配置IPv6地址、是否允许节点通过IPv6接入,或是否支持IPv6目标。它们不能相互替代。一个开关关闭了某类解析结果,不代表所有应用已有的IPv6连接或独立解析行为都会随之改变。
04节点接入地址与目标出口仍要区分
客户端可以通过IPv4连接代理节点,再由节点使用IPv6访问目标;也可以通过IPv6接入节点,由节点使用IPv4访问网站。
入口与出口的地址族没有必须相同的要求。判断网站看到什么,应关注最终到达网站的那段连接,而不是仅查看订阅里的服务器地址采用哪种写法。
这一点也影响性能理解。支持IPv6不自动意味着延迟更低或带宽更高,因为两条路径可能采用不同互联与资源分配。同一运营商的两种地址族,在某个时段表现不同是可能的。比较时仍需保持任务、目标与时间条件一致,不能只凭地址更长或协议更新,就认定体验必然更好。
05本地访问与网络切换会增加变量
局域网设备可能同时拥有多种地址,有些服务依靠本地名称或链路范围通信。
把所有地址都按远端访问处理,可能影响打印、共享和设备发现。另一方面,设备从家庭无线网络切到移动网络时,获得的地址与可达路径也可能改变,已有连接和新建连接未必立即表现一致。
浏览器缓存、应用独立DNS与连接复用会让观察更复杂。一次页面刷新可能继续使用旧连接,而新打开的应用已经选择另一条路径。出现位置检测不一致时,应该先分清应用、地址族和连接时间,再判断规则是否偏离目标。只反复切换节点,可能掩盖这些更直接的原因。
06明确目标比一律关闭IPv6更有用
有些人希望所有受管理的外网请求采用统一出口,有些人希望本地服务保持直连,还有些人主要解决个别应用的可达性。
不同目标需要不同的覆盖与例外安排。简单关闭IPv6有时会减少变量,但并不是所有设备和网络都适合的长期答案,也可能影响依赖相应连接能力的服务。
更合理的判断是检查客户端实际支持范围,让解析、路由和出站能力相互协调,并分别观察常用应用的实际访问结果。需要调整时,保留已知可用状态,避免同时变更多处设置。双栈知识的价值在于解释为什么“同一设备”仍可能存在多条不同路径,而不是为某一种地址体系贴上必然更快或更安全的标签。