首页/网络/协议速查/IPv6 头部结构

IPv6 头部结构

固定 40 字节:版本、流量类别、流标签、载荷长度、下一头部、跳限(Hop Limit)、源与目的地址;扩展头以链表形式补充功能。

协议速查网络更新于 2026-10-13

IPv6 头部是干什么的

IPv6 基本头固定 40 字节,字段比 IPv4 更少更规整:版本、流量类别、流标签、载荷长度、下一头部、跳限,加上各 128 位的源与目的地址。IPv4 里的选项、分片、首部校验和都被移除或改写:校验和交给上下层,分片只允许发送方做,路由器一律不分片。可变功能改由扩展头链表达。

基本信息

固定长度40 字节,不含扩展头
地址长度源与目的各 128 位
下一头部8 位,指出上层协议或下一个扩展头
跳限8 位,每经过一个路由器减 1,为 0 即丢弃
校验和已移除,完整性靠 TCP/UDP 或 AEAD 保证
分片仅发送方可分片,路由器遇到过大的包回 ICMPv6 包太大

典型使用场景

  • 抓包排障:理解扩展头链,才知道 Next Header 要一层层展开
  • MTU 与分片问题定位:路由器不分片是「能 ping 不能传」的常见根因
  • 防火墙策略:明确哪些扩展头被放行或被丢弃
  • 安全评估:超长扩展头链属于历史攻击面之一
  • IPv6 迁移方案:对比 v4/v6 头结构,理解地址耗尽问题的解决路径

观察头部与扩展头

观察头部与扩展头
# 抓 3 个 IPv6 包并展开头部细节
tcpdump -nn -vv 'ip6' -c 3
# 查看本机 IPv6 地址与路由
ip -6 addr show
ip -6 route show | head
# 在 Wireshark 中展开 Internet Protocol Version 6 再逐层看 Next Header

基本头字段

字段长度作用
版本/流量类别/流标签4+8+20 位版本号、QoS 差分、流标识
载荷长度16 位不含基本头,仅指负载字节数
下一头部8 位上层协议号,或指向扩展头
跳限8 位每跳减 1,为 0 时丢弃并发 ICMPv6 超时
源与目的地址各 128 位寻址核心,地址空间远大于 IPv4
常见扩展头包括逐跳选项、路由、分片、目的选项,出现顺序在规范中有要求。抓包时若顺序异常,可怀疑中间设备改写或实现有缺陷。
部分网络设备对未知扩展头直接丢弃,表现为只有特定类型的流量不通。排障时要能区分「包根本没到」与「包在扩展头处理环节被丢」。

易错点

  • 把「能 ping 通」当成网络正常:IPv6 中小包通过、大包被丢是典型现象,必须用大包 ping 验证
  • 防火墙只放行回显请求:不过滤放行包太大(type 2)会让 PMTUD 失效,大流量静默失败
  • 按固定 40 字节偏移解析所有包:带扩展头时会读错上层内容
  • 认为 IPv6 没有广播就绝对安全:邻居发现消息同样可被伪造,需要 RA Guard 一类防护

数据来源与参考

  • RFC 8200 §3
  • RFC 8200 §4(扩展头)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌