跳到主要内容

9.1 IPv6 的特点

9.1.1 IPv6 地址的格式(P152 4.5.2)

IPv6 地址长度从 IPv4 的 32 位增加到了 128 位,因此 IPv6 具有更大的地址空间,极大的延长了地址使用时间。

IPv6 没有 IPv4 中分类的地址的概念,地址记录方法是冒号十六进制记法(Colon Hexadecimal Notation),例如:

2001:0db8:85a3:5c4d:ac4c:8a2e:0370:7334

IPv6 地址还允许对连续的 0 进行省略:

  • 连续的四个 0 可简写为一个 0,例如 2001:0db8:85a3:5c4d:0000:8a2e:0370:7334 可简写为 2001:0db8:85a3:5c4d:0:8a2e:0370:7334
  • 连续的多组四个 0 可简写为双冒号,即 ::,称为零压缩,例如 2001:0db8:0000:0000:0000:8a2e:0370:7334 可简写为 2001:0db8::8a2e:0370:7334,但为避免歧义,一个地址只能存在一次零压缩。

CIDR 的斜线记法在 IPv6 仍可用(但 IPv6 取消了子网掩码的概念),例如:

2001:0db8::8a2e:0370:7334/60

上述地址表示其网络前缀长度为 60。

9.1.2 IPv4 地址的类型

地址类型CIDR前缀二进制
特殊地址未指明地址::/12800...0(128 位)
多播地址(Multicast)FF00::/81111 1111
任播地址(Anycast)(取决于网络配置)
单播地址(Unicast)本地站点单播地址
(本地主机单播地址)
FEC0::/101111 1110 11
本地链路单播地址FE80::/101111 1110 10
回环地址::1/12800...1(128 位)
全球单播地址剩余所有地址

相关词条:

  • IPv6 没有广播地址
  • 任播地址(Anycast):任播地址的目标计算机是一组计算机,但只交付给其中一个。通常用于负载均衡等。

9.1.3 地址自动配置

IPv4 中使用 DHCP 完成地址自动配置,IPv6 使用 DHCPv6 和 SLAAC 两种方式完成地址自动配置。

  1. DHCPv6

    DHCPv6 工作机制和 DHCP 非常相似,不过 DHCPv6 使用组播地址 FF05::1:3 发送 Discover 消息。DHCPv6 分配的地址为有状态的地址

  2. 无状态地址自动配置 SLAAC(Stateless Address Auto-configuration)

    IPv6 网络还允许主机使用 SLAAC 自行生成无状态的地址。常见方式是将网卡的 MAC 地址转换为 EUI-64 格式,生成 64 位的标识符,拼接在路由器通报的网络前缀后面。

相关词条:

  • 路由器通告 RA(Router Advertisement)

    在 IPv6 的局域网中,路由器会定期发送 RA 消息,广播到网络中的所有设备,这些消息包含网络前缀、默认网关、MTU 大小等。

9.1.4 IPv4 向 IPv6 过度

IPv4 向 IPv6 过度有以下三种方式:

  1. (P155 4.5.3)双协议栈(Dual Stack)

    指在完全过度到 IPv6 前,使用双协议栈让主机同时支持 IPv4 和 IPv6,即既能和 IPv6 的系统通信,又能和 IPv4 的系统通信。

  2. (P155 4.5.3)隧道技术(Tunneling)

    指将 IPv4 的数据报作为 IPv6 数据报的数据部分,通过 IPv6 网络传输。

    这项技术需要双方路由器都支持此功能才能完成。

  3. NAT64

    利用 NAT 技术,将 IPv4 地址映射为 IPv6 地址,并把 IPv4 数据报转换为 IPv6 数据报的格式,通过 IPv6 网络传输。

    这项技术需要双方路由器都支持此功能才能完成。

9.1.5 IPv6 与 IPv4 的其他主要区别

  1. IPv6 不允许数据报转发时分片,因此当 IPv6 数据报长度大于 MTU 时,会被路由器直接被丢弃。
  2. IPv6 不支持广播,使用组播和任播代替。
  3. IPv6 内置 IPsec 协议以提供更好的安全性,而 IPv4 依赖外部协议。

相关词条:

  • MTU 黑洞

    由于 IPv6 不允许数据报转发时分片,因此只要数据报长度超过转发路径上任意一个路由器所设置 MTU,就会被丢弃,而路由器或网关可能会因为防火墙的配置等原因,导致数据报丢弃时回报的 ICMP 错误信息被拦截或丢失,使得发送方无法知晓数据报丢失的原因,这种现象被称为 MTU 黑洞。

  • MTU 钳制

    MTU 钳制可以解决 MTU 黑洞问题,即使 ICMP 错误信息被防火墙拦截,也能避免 MTU 黑洞的发生。

    MTU 钳制的基本思路是通过读取并修改 TCP 会话的协商内容,将最大分段大小 MSS 限制在某个值,使得最终数据报不会超过网络路径中的最小 MTU。

  • (P353 7.5.1 1.)IPsec

    IPsec 不是单一协议,而是能够在 IP 层提供互联网通信安全的协议族,广泛用于 VPN 和其他安全通信场景中。

    IPsec 通过在网络层中提供加密、认证和数据完整性来保证数据在 IP 网络上的安全传输。