Skip to content

IPv6 - 路由

路由的基本概念——基于路由表将数据包转发到目的地——在 IPv6 中与 IPv4 保持一致。然而,路由协议本身已更新或调整以支持 IPv6 更大的地址格式和特定功能。路由器是一种将非目标数据包转发出去的设备,它根据学习到的路由做出决策。

路由协议大致可分为:

  • 距离向量路由协议 (Distance Vector Routing Protocol):路由器通告其直接连接的路由,并从邻居学习新路由。到达目标的成本通常基于跳数 (hop count)。示例包括 RIP。BGP 是一个路径向量协议 (Path Vector protocol),它是距离向量协议的一种高级类型。
  • 链路状态路由协议 (Link-State Routing Protocol):路由器通过与同一路由区域内的所有其他路由器交换链路状态信息来构建完整的网络拓扑图 (topology)。然后,每台路由器使用 Dijkstra 算法等独立计算到达所有目标的最短路径。示例包括 OSPF 和 IS-IS。

路由协议也按其作用范围分类:

  • 内部网关协议 (IGP - Interior Gateway Protocol):用于单个自治系统 (AS - autonomous system) 或组织内部,在其内部路由器之间交换路由信息。示例包括 RIPng、OSPFv3、IPv6 版 EIGRP 和 IPv6 版 IS-IS。
  • 外部网关协议 (EGP - Exterior Gateway Protocol):用于不同自治系统之间交换路由信息。互联网上主要使用的 EGP 是 BGP。
  • RIPng (Routing Information Protocol next generation - RFC 2080):一种 IGP 和距离向量协议,从 RIPv2 更新而来以支持 IPv6。它使用 UDP 端口 521 和组播地址 FF02::9。由于扩展性限制,其使用通常仅限于较小、简单的网络。
  • OSPFv3 (Open Shortest Path First version 3 - RFC 5340):一种广泛使用的 IGP 和链路状态协议。OSPFv3 被重新设计为协议无关,使其能够承载 IPv6(以及可能其他地址族)的路由信息。它直接在 IPv6(协议号 89)上运行,并使用链路本地地址进行邻居通信。
  • IPv6 版 IS-IS (Intermediate System to Intermediate System - RFC 5308):另一种强大的链路状态 IGP,常用于大型服务提供商网络。IS-IS 通过新增 TLV (Type-Length-Values) 来支持 IPv6 前缀。
  • IPv6 版 EIGRP (Enhanced Interior Gateway Routing Protocol - RFC 5229):思科专有的距离向量协议(现为开放标准),扩展以支持 IPv6。它提供快速收敛和不等价负载均衡等特性。
  • MP-BGP (Multiprotocol BGP - RFC 4760):BGP version 4 (BGP-4) 是互联网的 EGP。MP-BGP 扩展了 BGP-4,可以使用地址族标识符 (AFI) 和后续地址族标识符 (SAFI) 来承载多种网络层协议的路由信息,包括 IPv6。
  • ICMPv6 (Internet Control Message Protocol version 6 - RFC 4443):IPv6 的关键组成部分,ICMPv6 处理错误报告、诊断功能(如 ping),并作为邻居发现协议 (NDP - Neighbor Discovery Protocol - RFC 4861) 和组播监听发现 (MLD - Multicast Listener Discovery - RFC 2710) 的基础。例如,NDP 替代了 ARP 并处理路由器/邻居发现。
  • DHCPv6 (Dynamic Host Configuration Protocol version 6 - RFC 8415):虽然 IPv6 主机可以使用无状态地址自动配置 (SLAAC - Stateless Address Autoconfiguration),但 DHCPv6 提供有状态地址分配(分配特定的 IP 地址)和无状态配置(提供其他参数,如 DNS 服务器、NTP 服务器、域名)。DHCPv6 前缀委派 (DHCPv6-PD - DHCPv6 Prefix Delegation) 常用于 ISP 向客户路由器委派网络前缀。
  • DNS (域名系统):DNS 已扩展以支持 IPv6。‘AAAA’(四 A)资源记录类型用于存储主机名的 IPv6 地址。对于反向 DNS 查询,使用 ‘ip6.arpa’ 域,其中 PTR 记录将 IPv6 地址映射回主机名。