IPv6 技术详解
1960 字
10 分钟
IPv6 技术详解
IPv6 技术详解
一、IPv6概述
- IPv6定义:IETF 制定的下一代 IP 协议(RFC 8200),用于解决 IPv4 地址枯竭问题
- IPv6 优势对比 IPv4:
- 地址空间大(128bit vs 32bit)
- 简化头部(基本头 40 字节固定长度,中间设备无需分片)
- 取消广播,使用组播替代
- 内置 IPSec 安全支持
- 流标签字段支持 QoS
- 即插即用(SLAAC)
- 地址空间:2^128 ≈ 3.4×10^38,可分配地址数远超 IPv4
二、IPv6地址格式与类型 🏷️高频考点
2.1 地址格式
- 8 组 4 位十六进制,用冒号分隔
- 示例完整地址:
2001:0db8:0000:0000:0000:0000:0000:0001
2.2 简化规则
- 前导 0 可省略:
0db8→db8,0001→1 - 连续的 0 组可用
::缩写:0000:0000:0000:0000:0000:0000:0000:0001→::1::在一个地址中只能出现一次
- 示例:
2001:0db8:0000:0000:0000:0000:0000:0001→2001:db8::1
2.3 地址类型
| 类型 | 说明 | 前缀/范围 |
|---|---|---|
| 全球单播 | 可在公网路由 | 2000::/3 |
| 链路本地 | 仅链路内有效,自动生成 | FE80::/10 |
| 唯一本地 | 内部私有使用 | FD00::/8(FC00::/7 的子集) |
| 回环 | 本机测试 | ::1/128 |
| 未指定 | 默认/占位地址 | ::/128 |
| 组播 | 一对多通信 | FF00::/8 |
| 任播 | 一对最近(格式同单播,分配给多接口) | 同单播格式 |
2.4 接口标识符(EUI-64)
- 接口标识符为 64 位,由 EUI-64 或手动配置生成
- EUI-64 生成方法:
- 在 MAC 地址(48bit)中间插入
FFFE,形成 64bit - 将第 7 位(U/L 位)翻转(0→1 或 1→0)
- 在 MAC 地址(48bit)中间插入
- 示例:MAC
00-11-22-33-44-55- 插入 FFFE:
00:11:22:FF:FE:33:44:55 - 第 1 字节
00=00000000,第 7 位翻转 →00000010=02 - 最终 EUI-64:
02:11:22:FF:FE:33:44:55
- 插入 FFFE:
三、ICMPv6 🏷️高频考点
3.1 功能增强
ICMPv6(RFC 4443)相比 ICMPv4 功能扩展:
- 错误报告(目的不可达、包过大、超时、参数问题)
- 信息查询(Echo Request/Reply)
- NDP(邻居发现协议)
- MLD(组播侦听发现)
- PMTU 发现(通过 Packet Too Big 报文)
3.2 ICMPv6 类型表
| Type | 名称 | 用途 |
|---|---|---|
| 1 | Destination Unreachable | 目的不可达 |
| 2 | Packet Too Big | 包过大(PMTU 发现) |
| 3 | Time Exceeded | 超时(TTL 跳数耗尽) |
| 4 | Parameter Problem | 参数问题 |
| 128 | Echo Request | 请求回显(ping) |
| 129 | Echo Reply | 回显应答 |
| 130 | MLD Query | 组播侦听查询 |
| 131 | MLD Report | 组播侦听报告 |
| 132 | MLD Done | 组播侦听离开 |
| 133 | Router Solicitation (RS) | 路由器请求(NDP) |
| 134 | Router Advertisement (RA) | 路由器通告(NDP) |
| 135 | Neighbor Solicitation (NS) | 邻居请求(NDP) |
| 136 | Neighbor Advertisement (NA) | 邻居通告(NDP) |
| 137 | Redirect | 重定向(NDP) |
四、IPv6邻居发现协议NDP 🏷️高频考点
NDP(Neighbor Discovery Protocol) 使用 ICMPv6,替代 IPv4 中的 ARP + ICMP 路由发现 + 重定向功能。
4.1 NDP 报文功能
| 报文 | ICMPv6 Type | 功能 |
|---|---|---|
| RS(Router Solicitation) | 133 | 主机请求路由前缀信息 |
| RA(Router Advertisement) | 134 | 路由器通告前缀/跳数/M标志位 |
| NS(Neighbor Solicitation) | 135 | 邻居请求(类似 ARP Request) |
| NA(Neighbor Advertisement) | 136 | 邻居通告(类似 ARP Reply) |
| Redirect | 137 | 告知主机更好的下一跳 |
4.2 DAD(重复地址检测)
- DAD(Duplicate Address Detection):地址配置前检测是否冲突
- 使用 NS/NA:节点发送 NS(目标地址为待检测地址),若无 NA 响应则地址可用
- 链路本地地址必须经过 DAD
五、IPv6地址配置 🏷️高频考点
| 方式 | 说明 | 适用场景 |
|---|---|---|
| 手动配置 | ipv6 address 命令 | 服务器、路由器互联 |
| SLAAC | 通过 RA 报文获取前缀,自动生成 EUI-64 | 终端自动获取 |
| DHCPv6(有状态) | 服务器分配地址+其他配置 | 集中管理 |
| DHCPv6(无状态) | 仅提供 DNS 等配置,地址由 SLAAC 分配 | 仅需配置参数 |
| 链路本地自动生成 | 接口使能 IPv6 后自动生成 FE80::/10 | 所有接口 |
RA 报文标志位(M/O/A):
- M(Managed)=1:使用 DHCPv6 有状态获取地址
- O(Other)=1:使用 DHCPv6 获取其他配置
- A(Autonomous)=1:使用 SLAAC 自动配置
六、IPv6路由协议 🏷️高频考点
6.1 OSPFv3
- 协议号 89,支持 IPv6
- 使用链路本地地址建立邻居、同步 LSDB
- Area 概念同 OSPFv2(骨干 Area 0)
- OSPFv3 与 OSPFv2 区别:
- 基于链路(Link)而非网段:同一链路可运行多实例
- 支持单实例多协议(通过 Instance-ID 区分)
- 取消认证字段(改用 IPsec)
- LSDB 同步基于链路本地地址
- 支持 IPv6 与 IPv4 双栈(多拓扑)
6.2 MP-BGP for IPv6
- BGP4+ 扩展(MP-BGP),使用 MP-BGP 承载 IPv6 路由
- 使用 MBGP 扩展能力(AFI=2,SAFI=1 单播/2 组播)
- 支持 IPv4/v6 单播路由混合传递
6.3 RIPng
- UDP 521 端口,组播地址
FF02::9 - 基于 IPv6,与 RIPv2 类似(距离向量,跳数上限 15)
七、DHCPv6 🏷️高频考点
7.1 基本参数
- DHCPv6 端口:客户端 UDP 546,服务器 UDP 547
- 使用组播地址
FF02::1:2(All DHCPv6 Relay Agents and Servers)
7.2 DHCPv6 模式
| 模式 | 说明 | RA 标志 |
|---|---|---|
| 有状态(Stateful) | 服务器分配地址+其他配置 | M=1 |
| 无状态(Stateless) | 仅提供 DNS 等配置,地址由 SLAAC 分配 | M=0, O=1 |
7.3 其他特性
- DHCPv6 中继(Relay):跨网段转发 DHCPv6 报文
- DHCPv6 PD(前缀委派):向下游设备委派 IPv6 前缀,常用于运营商→企业
八、IPv4到IPv6过渡技术 🏷️高频考点
8.1 双栈(Dual Stack)
- 设备同时运行 IPv4 和 IPv6 协议栈
- 应用根据 DNS 解析结果选择协议
- 优点:简单;缺点:需同时维护两套协议、需要双地址
8.2 隧道技术(Tunneling)
| 隧道类型 | 说明 | 起始地址要求 |
|---|---|---|
| GRE 隧道 | 通用封装,IPv6 over IPv4 | 手动配置 |
| 手动隧道 | IPv6 over IPv4 手动隧道 | 双栈边界 |
| 6to4 | 自动隧道,前缀 2002::/16,IPv4 嵌入地址 | 自动 |
| ISATAP | 站点内自动隧道,用于 IPv4 中的 IPv6 节点 | 自动 |
8.3 NAT64 / DNS64
- NAT64:IPv6 网络访问 IPv4 网络,做协议转换
- DNS64:将 IPv4 DNS 查询结果合成 AAAA 记录返回给 IPv6 客户端
8.4 过渡技术拓扑图
九、华为设备配置命令示例
9.1 接口使能 IPv6
<Huawei> system-view[Huawei] interface GigabitEthernet 0/0/1[Huawei-GigabitEthernet0/0/1] ipv6 enable9.2 配置全球单播地址
[Huawei-GigabitEthernet0/0/1] ipv6 address 2001:db8::1/64# 或使用 EUI-64 自动生成接口标识符[Huawei-GigabitEthernet0/0/1] ipv6 address 2001:db8::/64 eui-649.3 配置链路本地地址
# 默认使能 IPv6 后会自动生成链路本地地址,也可手动指定[Huawei-GigabitEthernet0/0/1] ipv6 address fe80::1 link-local9.4 使能 RA 发送
# 默认 RA 报文不发送,需手动开启[Huawei-GigabitEthernet0/0/1] undo ipv6 nd ra halt# 配置 RA 报文 M/O 标志位(有状态 DHCPv6)[Huawei-GigabitEthernet0/0/1] ipv6 nd autoconfig managed-address-flag[Huawei-GigabitEthernet0/0/1] ipv6 nd autoconfig other-flag9.5 OSPFv3 配置
[Huawei] ospfv3 1[Huawei-ospfv3-1] router-id 1.1.1.1[Huawei-ospfv3-1] area 0.0.0.0[Huawei-ospfv3-1-area-0.0.0.0] quit[Huawei] interface GigabitEthernet 0/0/1[Huawei-GigabitEthernet0/0/1] ospfv3 1 area 09.6 DHCPv6 服务器配置
[Huawei] dhcp enable[Huawei] ipv6[Huawei] dhcpv6 pool pool1[Huawei-dhcpv6-pool-pool1] address prefix 2001:db8::/64[Huawei-dhcpv6-pool-pool1] excluded-address 2001:db8::1[Huawei-dhcpv6-pool-pool1] dns-server 2001:4860:4860::8888[Huawei-dhcpv6-pool-pool1] quit[Huawei] interface GigabitEthernet 0/0/1[Huawei-GigabitEthernet0/0/1] dhcpv6 server pool19.7 DHCPv6 中继配置
[Huawei] dhcp enable[Huawei] ipv6[Huawei] interface GigabitEthernet 0/0/1[Huawei-GigabitEthernet0/0/1] ipv6 enable[Huawei-GigabitEthernet0/0/1] ipv6 address fe80::1 link-local[Huawei-GigabitEthernet0/0/1] dhcpv6 relay destination 2001:db8::29.8 6to4 隧道配置
# 假设隧道源接口 GigabitEthernet0/0/1 的 IPv4 为 10.1.1.1[Huawei] interface Tunnel0/0/1[Huawei-Tunnel0/0/1] tunnel-protocol ipv6-ipv4 6to4[Huawei-Tunnel0/0/1] source GigabitEthernet 0/0/1[Huawei-Tunnel0/0/1] ipv6 enable[Huawei-Tunnel0/0/1] ipv6 address 2002:0101:0101::1/64# 配置路由指向 6to4 网络[Huawei] ipv6 route-static 2002::/16 Tunnel0/0/1十、常见故障排查
10.1 IPv6 邻居无法发现
可能原因:
- 接口未使能 IPv6
- 链路本地地址冲突(DAD 失败)
- ACL 过滤了 ICMPv6 NS/NA 报文
排查命令:
display ipv6 interface GigabitEthernet 0/0/1display ipv6 neighborsdisplay ipv6 neighbors all10.2 SLAAC 地址无法生成
可能原因:
- 路由器未发送 RA(默认
ipv6 nd ra halt启用) - 链路本地地址未生成(DAD 失败)
- RA 中 A 标志位为 0
排查命令:
display ipv6 interface GigabitEthernet 0/0/1# 查看接口 RA 配置display ipv6 nd interface GigabitEthernet 0/0/110.3 OSPFv3 邻居不建立
可能原因:
- Router-ID 冲突
- Area 配置不一致
- 链路本地地址无法通信
- 接口未使能 OSPFv3
排查命令:
display ospfv3 peerdisplay ospfv3 interfacedisplay ospfv3 lsdb10.4 常用命令汇总
| 命令 | 用途 |
|---|---|
display ipv6 interface | 查看接口 IPv6 配置 |
display ipv6 interface brief | 查看所有接口 IPv6 简要信息 |
display ipv6 neighbors | 查看 IPv6 邻居表 |
display ipv6 routing-table | 查看 IPv6 路由表 |
display ospfv3 peer | 查看 OSPFv3 邻居 |
display ospfv3 lsdb | 查看 OSPFv3 LSDB |
display dhcpv6 pool | 查看 DHCPv6 地址池 |
ping ipv6 | IPv6 Ping 测试 |
tracert ipv6 | IPv6 路径跟踪 |
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章智能推荐
1
VLAN 技术详解
网络2026-08-05
2
ACL技术详解
网络2026-08-05
3
BFD技术详解
网络2026-08-05
4
NAT技术详解
网络2026-08-05
5
VRRP技术详解
网络2026-08-05
随机文章随机推荐



