EUI-64 生成规则
EUI-64 是早期无状态地址自动配置生成接口标识的标准方法:取 48 位 MAC 地址,从中间切成前后各 24 位,在中间插入固定的 FFFE,再把第一个字节的第 7 位翻转,得到 64 位接口标识,拼到 /64 前缀后就是完整 IPv6 地址。翻转这一位是因为原 MAC 里的该位表示全局或本地,而 IPv6 接口标识里该位含义是相反方向。
基本信息
| 输入 | 48 位 MAC 地址 |
|---|---|
| 步骤一 | 拆成前后各 24 位 |
| 步骤二 | 中间插入 FFFE,形成 64 位 |
| 步骤三 | 翻转首字节的第 7 位(异或 0x02) |
| 结果 | 64 位接口标识,拼接到 /64 前缀后 |
| 现状 | 现代系统默认使用随机或稳定隐私地址,EUI-64 已不是主流 |
生成步骤
生成步骤
MAC: 00:1a:2b:3c:4d:5e
① 拆分:00:1a:2b | 3c:4d:5e
② 插入 FFFE:00:1a:2b:ff:fe:3c:4d:5e
③ 首字节 00 异或 0x02 得到 02
④ 接口标识:021a:2bff:fe3c:4d5e
⑤ 拼前缀:2001:db8:1:10:021a:2bff:fe3c:4d5e位操作细节
| 步骤 | 涉及位 | 作用 |
|---|---|---|
| 插入 FFFE | 第 25 至 40 位 | 把 48 位扩展到 64 位 |
| 翻转 U/L 位 | 首字节第 7 位(0x02) | 把 MAC 的全局/本地标志适配为 IPv6 语义 |
| 保留其余位 | 其余 62 位 | 原样复制,保证唯一性来源一致 |
典型使用场景
- 换算考试题:给出 MAC 求接口标识或完整 IPv6 地址,是网络课程的高频题型
- 核对设备地址来源:看到接口标识里含 ff:fe 基本可判断由 EUI-64 方式生成
- 理解隐私问题:接口标识直接源自硬件地址,意味着终端可被跨网络长期追踪
- 排查地址不一致:系统改成随机地址后,按 EUI-64 推算的结果与实际地址对不上
- 审计旧配置:早期静态绑定的 EUI-64 地址在系统升级后可能失效
现代操作系统默认启用隐私扩展,同一张网卡在不同网络会使用不同接口标识,因此用 EUI-64 反推实际地址往往对不上,这不是配置错误。
EUI-64 只是接口标识的一种生成方式,前缀依然来自 RA 或手工配置;把两者混为一谈会导致“为什么地址前缀也变了”这类误判。