Cisco 200-301: IPv6 寻址和 IPv6 路由 — 学习指南
属于 Cisco CCNA 200-301 — 学习指南. 使用经过验证的答案练习: Cisco 考试中心, 或参加限时模拟考试: ExamRoll.io.
概述
IPv6 替代了容易耗尽的 IPv4 地址,提供了一个极其庞大、结构化的地址空间和无需广播即可运行的控制平面协议。本节将解释 IPv6 的寻址和路由概念,并介绍相关的配置要点以及设计选择背后的运维考量。重点将放在故障模式、第一跳安全以及实用的故障排查工作流程上。
IPv6 寻址基础
表示法、压缩和扩展:
- IPv6 地址是 128 位的值,以十六进制形式书写,由八个 16 位的 hextet(十六位字节组)组成,并用冒号分隔(例如,2001:0db8:0000:0000:0500:000a:400f:583b)。
- 每个 hextet 内部的前导零可以省略。一段连续的全零 hextet 可以使用 :: 进行一次压缩。压缩示例:2001:db8::500:a:400f:583b。
- 扩展是逆向过程,通过恢复省略的零和 hextet 来完成。
地址类型:
- 全局单播 (GUA): 2000::/3。可在公网路由;类似于 IPv4 的公有地址。用于域间通信。
- 唯一本地 (ULA): fc00::/7 (本地分配通常使用 fd00::/8)。在一个站点内部或跨 VPN 连接的站点之间可达,但不用于公网路由。适用于需要内部稳定性的场景以及实验室/测试环境。
- 链路本地: fe80::/10。每个 IPv6 接口都必须配置;用于链路上的通信(如 NDP)以及作为路由的下一跳。绝不会被路由到链路之外。
- 组播: ff00::/8。替代了广播。作用域(Scope)定义了其可达范围(例如,ff02::/16 是链路本地作用域)。
- 任播: 将一个单播地址配置在多个接口上;路由协议会将数据包投递到拓扑上最近的接口。常用于 DNS 或叶脊网络架构中的默认网关等服务。任播没有特殊的比特模式,它是一种运维实践。
前缀、接口标识符和子网规划:
- 最常见的局域网前缀长度是 /64。SLAAC 要求使用 /64 前缀。接口标识符 (IID) 是 64 位。
- IID 的形成方式:
- EUI-64 通过接口的 MAC 地址派生出 IID,方法是在 MAC 地址中间插入 fffe 并反转通用/本地位(第 7 位)。Cisco IOS 上的示例:ipv6 address 2001:DB8:5:112::/64 eui-64。
- 隐私 IID(临时地址)会随机化 IID 以减轻主机跟踪;RFC 7217 定义了每个前缀下稳定但随机的 IID。
- 规划指南:
- 使用分层聚合(例如,每个站点一个 /48,每栋建筑一个 /56,每个 VLAN 一个 /64)。
- 点对点链路可以使用 /127 来消除子网路由器任播,并防止某些扫描/ND 耗尽攻击;如果在此类链路上使用 SLAAC,则应保留 /64。
- 为需要访问互联网的网络保留 GUA;对于纯内部网段,可考虑使用 ULA,以将内部地址与 ISP 分配解耦。避免使用 NAT66;如果因策略或提供商独立性需要进行地址转换,首选 NPTv6 前缀转换,并谨慎确保对称性。
IPv6 自动配置、邻居发现和组播
路由器通告 (RA) 和地址分配:
- RA 传递链路上的前缀、默认网关生命周期以及控制主机行为的标志位:
- SLAAC: 主机使用 RA 的前缀信息选项 (PIO) 创建 IID (EUI-64 或隐私地址)。
- 无状态 DHCPv6: RA 的“其他配置”标志位置位;主机使用 DHCPv6 获取 DNS 和其他参数,但不获取地址。
- 有状态 DHCPv6: RA 的“受管理”标志位置位;主机从 DHCPv6 获取地址和参数。RA 仍可能提供默认网关。
- Cisco 注意:当启用 ipv6 unicast-routing 并且三层接口上存在链路前缀时,该接口会发送 RA。可以通过 ipv6 nd 命令来调整发送间隔和标志位。
- 在 SVI 上通告无状态 DHCPv6 的示例:
- interface Vlan10 ipv6 address 2001:db8:10:10::1/64 ipv6 nd other-config-flag
邻居发现协议 (NDP) 和 ICMPv6:
- ICMPv6 是 IPv6 控制功能的基础,包括:路由器请求 (RS)、路由器通告 (RA)、邻居请求 (NS)、邻居通告 (NA) 和重定向 (Redirect)。
- 重复地址检测 (DAD) 使用 NS 发送到临时地址的被请求节点组播地址;如果收到响应 (NA),则该地址不会被分配。
- 默认路由器的选择源自 RA;邻居和默认路由器被缓存在邻居缓存中(类似于 ARP 表)。运维问题通常源于陈旧或不完整的邻居缓存条目。
组播行为和被请求节点组播:
- IPv6 没有广播。组播组针对特定功能:
- ff02::1 所有节点组(启用 IPv6 后,每个接口都会加入)。
- ff02::2 所有路由器组(路由器接口会加入;主机不会)。
- ff02::1:ffXX:XXXX 被请求节点组播;每个分配的单播/任播地址都使用其地址的低 24 位映射到一个被请求节点组播组。NDP 使用它来高效地解析二层地址。
- IPv6 组播的二层映射使用 MAC 地址 33:33:xx:xx:xx:xx。交换机上的以太网组播过滤和 MLD snooping 可以防止过度的泛洪。
常见故障模式和权衡:
- RA 缺失或被过滤会导致主机仅能自动配置链路本地地址,使得连接看起来仅限于本地链路。
- RA 标志位设置错误会导致意外地依赖 DHCPv6 或缺少 DNS 设置。
- EUI-64 会暴露源自 OUI 的标识符;隐私 IID 以牺牲 ACL 的运维稳定性为代价来减轻跟踪。
- 当同一链路上存在类似任播的重复地址时,会发生 DAD 失败;应相应地协调网关冗余设计。
IPv6 路由和迁移
静态路由和默认路由:
- 默认路由:::/0。示例:
- ipv6 route ::/0 GigabitEthernet0/0 fe80::1
- 当使用链路本地下一跳时,需要指定出接口以消除范围歧义。
- 网络路由示例:
- ipv6 route 2001:db8:20::/48 2001:db8:10:1::2
- ipv6 route 2001:db8:30::/48 GigabitEthernet0/1 fe80::2
- 操作说明:
- 递归下一跳解析需要邻居条目;ND 失败在 CEF 中表现为未解析的邻接关系。
- 管理距离和度量值决定了候选路由的优先级;转发时使用最长前缀匹配。
路由表查找:
- 最长前缀匹配会选择最具体的路由;如果长度相等,则根据协议偏好和度量值选择路由。Connected 和 local 路由最优先,并提供直连的下一跳。
双栈、隧道和迁移:
- 双栈:并行运行 IPv4 和 IPv6。最易于排错并提供原生性能;但会使控制平面和安全策略的工作量加倍。
- 隧道(IPv6-in-IPv4):手动或动态隧道、GRE 和 6RD 可在 IPv4 核心网上传输 IPv6。当提供商缺少原生 IPv6 支持时很有用;MTU 和 PMTUD 的考量至关重要。隧道会增加封装开销和操作复杂性。
- 转换:NAT64/DNS64 使纯 IPv6 客户端能够访问纯 IPv4 服务器。这会引入状态、协议边缘情况(嵌入的 IP、字面量)和调试复杂性。NPTv6 提供无状态前缀转换,以实现提供商无关性和对称路径。
- 设计权衡:
- 优先在网络边缘部署原生双栈,然后是核心网络。
- 将隧道用作过渡性支架,并制定明确的淘汰计划。
- 对于纯 IPv6 网段,需规划好应用程序的就绪情况和 NAT64 的部署位置。
IPv6 第一跳安全概念:
- RA Guard:在不受信任的接入端口上阻止未经授权的 RA;防止恶意网关。
- DHCPv6 Guard:阻止未经授权的 DHCPv6 服务器消息。
- IPv6 Snooping 和绑定表:学习 IPv6-MAC-端口的绑定关系,为强制执行功能提供数据。
- IPv6 Source Guard 和 ND Inspection:强制执行源地址有效性,并根据绑定表验证 NDP 消息,以阻止欺骗攻击。
- SeND (Secure NDP) 技术存在,但由于 PKI 的复杂性而很少部署。
- MLD Snooping:将组播流量限制在感兴趣的接收者范围内;减少泛洪。
验证与故障排查工作流
基线检查:
- 确保全局 IPv6 已启用:show running-config | include ipv6 unicast-routing。
- 接口状态与地址:使用 show ipv6 interface brief;show ipv6 interface 来确认链路本地地址、RA 设置和 ND 参数。
- 验证主机学习到的 RA 和默认路由器:使用 show ipv6 routers,并在主机上检查默认路由和 SLAAC/DHCPv6 状态。
邻居发现与路径解析:
- 检查邻居缓存:show ipv6 neighbors;如果条目陈旧,则使用 clear ipv6 neighbors 清除。
- 使用 ping 和 traceroute 的 IPv6 版本;同时测试链路本地地址(需指定出接口范围)和全局地址,以隔离链路内与链路外问题。
路由:
- 检查路由表:show ipv6 route;确认到目标地址的最长匹配项。
- 验证静态路由和下一跳可达性;对于链路本地的下一跳,确认指定的出接口上邻居处于 REACH 或 STALE 状态。
- CEF 与邻接关系:使用 show ipv6 cef exact-route
查看已解析的邻接关系;未解析状态表示存在 ND 或类似 ARP 的故障。
控制平面健康状况:
- ICMPv6 计数器:使用 show ipv6 traffic 观察 NS/NA/RA/RS 报文的数量和丢弃情况。
- 在交换机上,验证第一跳安全策略和 MLD snooping 状态,确保合法的控制流量未被阻塞。
常见陷阱:
- 在路由器上忘记配置 ipv6 unicast-routing 会导致无法发送 RA 和进行路由。
- 错误配置的前缀长度导致主机错误地将目标地址判断为链路内或链路外;症状包括对链路外前缀进行 NDP 查询或缺少默认路由。
- 跨隧道的 MTU/分片问题会破坏 PMTUD;观察超大 ICMPv6 “Packet Too Big” 报文的处理情况。
实际问题场景
Northwind Textiles 公司正在其总部园区推广 IPv6,但其 MPLS WAN 在未来六个月内仍仅支持 IPv4。挑战在于:为用户 VLAN 提供双栈服务、原生 IPv6 互联网访问和安全的第一跳行为,同时利用 IPv4 MPLS 核心网络在不同楼宇之间承载 IPv6 流量。
方法:
- 启用 IPv6 并建立地址规划
- 在园区路由器和 SVI 上配置 ipv6 unicast-routing。从 ISP 分配一个 /48 的 GUA 地址 2001:db8:1200::/48,并为每个用户 VLAN 划分 /64 的子网,为路由化的点对点链路划分 /127 的子网。理由:/64 支持 SLAAC;在 P2P 链路上使用 /127 可以减少攻击面并消除子网路由器任播(subnet-router anycast)地址。
- 部署 SLAAC 并结合无状态 DHCPv6 提供 DNS
- 在 SVI 上,配置 ipv6 address
::1/64 和 ipv6 nd other-config-flag。建立 DHCPv6 服务以提供 RDNSS 选项,或使用无状态 DHCPv6 来提供 DNS 服务器。理由:SLAAC 最大限度地减少了客户端的配置开销;无状态 DHCPv6 在不增加地址状态的情况下提供了关键的非地址参数。
- 跨 MPLS 核心构建 IPv6-in-IPv4 GRE 隧道
- 在楼宇路由器之间创建带 keepalive 的点对点 GRE 隧道;在隧道上运行 IPv6 IGP 或配置静态 IPv6 路由。理由:GRE 能在仅支持 IPv4 的提供商网络上封装 IPv6,路径可预测;keepalive 用于检测路径故障。调整 MTU(通过 tunnel path-mtu-discovery 或 interface mtu 调整)以避免分片。
- 从互联网边缘通告默认路由
- 在互联网边缘,配置指向 ISP 的 ipv6 route ::/0 路由,并向园区 IGP 通告该默认路由。理由:集中式出口可确保流量路径对称和一致的策略控制;分发默认路由简化了园区路由。
- 在接入交换机上保障第一跳安全
- 在面向用户的端口上启用 RA Guard 和 DHCPv6 Guard;启用 IPv6 Snooping 来填充绑定表并强制执行 IPv6 Source Guard。理由:防止恶意的 RA 和未经授权的 DHCPv6 服务器;源验证可阻止欺骗和邻居缓存中毒攻击。
- 规范化 IID 与隐私
- 对于基础设施接口,使用稳定的 IID(手动配置为 ::1, ::2)或在适当时使用 EUI-64;对于用户,允许使用隐私扩展。理由:可预测的基础设施地址简化了运维;隐私 IID 可以在不影响网关操作的情况下保护用户免受跟踪。
- 验证与监控
- 使用 show ipv6 interface 和 show ipv6 routers 验证 RA;使用 show ipv6 neighbors 和 show interfaces tunnel 确认邻居表和隧道邻接关系。使用 show ipv6 traffic 和可用的 netflow/IPFIX 建立基线。理由:早期的基线有助于快速识别偏差;ND 和隧道的健康状况直接影响转发。
- 针对纯 IPv6 服务的应急预案
- 如果需要一个试点的纯 IPv6 网段,可在园区边缘部署 NAT64/DNS64,以访问仅支持 IPv4 的站点。理由:NAT64 能够实现 IPv6 的增量采用,同时避免在特定的现代终端上部署双栈;限定范围的使用控制了转换的复杂性。
该计划以最小的中断将 IPv6 上线,控制了第一跳风险,并通过受控的隧道技术弥合了临时性的提供商网络差距,直到端到端的原生 IPv6 可用为止。
← IPv4 寻址、子网划分和路由 · 所有领域 · 动态路由和 IP 连通性 →
练习这些题目 → · 在 ExamRoll.io 上限时练习 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
通过考试 →