IPv6 隐私扩展:为什么你的 IPv6 地址一直在变
开着 IPv6 的设备每次联网地址都不一样?这不是故障,是隐私扩展(RFC 4941)在工作。讲清楚 EUI-64 的问题、临时地址的机制,以及它对追踪的影响。
细心的用户会发现:IPv4 时代查自己的 IP 总是同一个,换到 IPv6 后每次查询地址都不太一样,尤其是后半段一直在变。这是故障吗?恰恰相反——这是一项保护你隐私的机制在正常工作。
问题:IPv6 的地址太"诚实"
IPv6 地址有 128 位,其中接口标识符(后 64 位)默认由 EUI-64 算法生成:直接拿网卡的 MAC 地址,中间插入 ff:fe,翻转第 7 位。
这带来一个麻烦:MAC 地址是全球唯一且烧录在网卡里的。用它生成 IPv6 地址意味着——
- 你的设备走到哪个网络,地址后缀都一样
- 任何网站都能通过地址后缀跨网络追踪你
- 咖啡馆 WiFi 和家里宽带,后缀相同,等于随身携带的身份证号
解决方案一:隐私扩展(RFC 4941)
隐私扩展的思路很直接:接口标识符不用 MAC 生成,改用随机数。而且不只是随机一次——系统会定期生成新的"临时地址"用于对外发起连接,旧地址逐步弃用。
这就是你观察到的现象的来源:
- 每次连网 / 每隔一段时间,临时地址的后半段都会变
- Windows / macOS / Android / iOS 默认开启
- 网站看到的是临时地址,MAC 衍生的"永久地址"只用于本地链路
代价是服务器看到的地址稳定性下降,对正常网站完全无感,只对"想持续追踪你的那部分"有效。
解决方案二:SLAAC 随机化(RFC 7217)
更现代的方案是 Stable Privacy Addresses:接口标识符仍然稳定(方便防火墙规则、日志审计),但用地址前缀 + 接口标识 + 密钥做哈希生成——换一个网络,哈希输入变了,后缀就变。既保证了每个网络内的稳定性,又消除了跨网络的可关联性。
现代操作系统通常是两者结合:SLAAC 稳定地址负责"被连接"(接收流量),临时地址负责"主动出击"(发起连接),对外只暴露后者。
怎么查自己的设备状态
打开 IPchase 首页,如果显示的是 IPv6 地址,隔几小时再查一次:
- 后半段变化 → 隐私扩展在正常工作
- 前半段(前缀)不变 → 运营商分配的网段稳定,这是正常的(前缀由路由器分配)
- 完全没变 → 可能隐私扩展被关闭(企业环境有时为了审计会统一配置)
隐私扩展的边界:它保护什么、不保护什么
临时地址轮换的是"地址后缀",它防的是跨网络、跨时间的身份关联。但它的保护有明确边界:
- 不改变网段归属:前半段仍是运营商分配的全球路由前缀,归属地、运营商信息一目了然
- 同网段内可关联:同一个 WiFi 下,你的临时地址轮换前保持稳定;使用同一前缀的设备可以被归到"同一户"
- 轮换频率不等于匿名:临时地址默认几小时到一天一换,但在单次会话内始终不变,网站完全可以按会话追踪
- 防火墙例外规则会固定你:为了入站连接,一些系统会把"稳定地址"作为接收地址——如果你把某个地址写进了 DDNS 或防火墙规则,那个地址就不再轮换
换句话说,隐私扩展解决的是 IPv6 设计中最刺眼的缺陷(MAC 可关联),但 IP 层面能做的隐私保护到此为止。更细粒度的追踪靠的是 Cookie 与浏览器指纹——这也是"换个 IP 还是被认出来"的主要原因。
运维场景里的取舍
隐私扩展对网站运营者同样是双刃剑:
- 日志与风控:同一用户一小时内的请求可能来自三个不同 IPv6 地址,按精确 IP 聚合的统计和风控都会失真,按 /64 前缀聚合才接近"用户"粒度
- 白名单难题:给用户做 IP 白名单时,IPv6 用户几乎没法直接用精确地址,要么放前缀(放大了授权范围),要么引导用户使用稳定地址或账号体系
- 反爬场景:攻击者的临时地址轮换让精确封禁形同虚设,但这也意味着误封风险更高——前缀封禁可能误伤同户下的正常用户
对网站运营者的启示
如果你的网站做"IP 封禁",IPv6 时代要按前缀(/48 或 /64)封而不是精确 IP——用户的每次请求可能来自网段内的不同地址,精确封禁等于没封。
反过来,做用户识别时也别指望 IPv6 精确 IP 稳定——要么按前缀聚类,要么压根依赖别的信号(Cookie、指纹)。
小结
- IPv6 默认地址含 MAC 信息,等于随身携带可追踪标识
- 隐私扩展用定期轮换的随机临时地址对外发起连接,现代系统默认开启
- 地址后半段一直在变是隐私保护在工作,不是故障
- 封禁与识别逻辑都要按前缀而非精确 IPv6 地址来设计
想看看你当前的 IPv6 地址和归属地?IPchase 直接检测,顺手看看 IPv6 的基础知识。
检测你的网络环境:回到首页做一次完整检测,或试试 指纹检测。