13.《IPv6基础技术实践指南》

13.IPv6

IPv6基本介绍

IPv6(Internet Protocol Version 6,互联网协议第 6 版)是互联网协议的最新版本,是为解决 IPv4(互联网协议第 4 版)地址枯竭、功能局限等问题而设计的继任者。

随着互联网的飞速发展,IPv4 的 32 位地址空间(约 43 亿个地址)已无法满足全球设备联网需求,地址枯竭问题日益突出。同时,IPv4 在安全性、移动性、服务质量等方面的设计也难以适应现代网络发展。

IPv6 采用 128 位地址长度,理论上可提供约 3.4×10³⁸个地址,几乎能满足未来所有设备的联网需求。此外,IPv6 在协议设计上进行了多项优化,包括简化报文头部、增强安全性(内置 IPsec 支持)、支持即插即用、优化多播机制等,为物联网、5G、云计算等新兴技术的发展提供了更强大的网络基础。

IPv4 与 IPv6 对比

  • 地址空间:IPv4 地址长度为 32bit,公网地址资源紧张;IPv6 地址长度为 128bit,地址空间近乎 “无限”。
  • 报文头部:IPv4 报文头部长度为 20B-60B,设计较复杂;IPv6 报文头部简化,固定为 40B。
  • 广播与解析:IPv4 依赖 ARP 解析,易导致广播泛滥;IPv6 取消广播概念,无需依赖 ARP 解析。

IPv4 头部与 IPv6 头部对比

参考华为示图:

img

  • IPv4 头部特有字段
    • Identification、Flags、Offset:用于 IPv4 报文分片(将大包拆分为小包),而 IPv6 报文分片不基于头部完成。
    • TTL(Time to Live,生存时间):防止 IPv4 报文永久环路,每经过一台三层路由设备 TTL 减 1,减至 0 时停止转发。
    • Protocol(协议号):用于标识上层协议类型。
  • IPv6 头部新增字段
    • Flow Label(流标签):长度 20bit,用于区分实时流量。结合源地址可唯一确定一条数据流,便于中间网络设备高效区分数据流。

IPv6 地址

基本格式

IPv6 地址长度为 128bit,通常用冒号分割为 8 段,每段 16bit,以十六进制表示(字母不区分大小写)。采用 “IPv6 地址 / 掩码长度” 的方式表示,如2001:abcd::1/64

IPv6地址缩写规范:

  • 每段中的前导 0 可省略,后导 0 不可省略;若一段 16bit 全为 0,可缩写为单个 “0”。
  • 一个或多个连续的 16bit 为 0 时,可用 “::” 表示,但整个 IPv6 地址中仅允许出现一次 “::”。

参考华为示图:

img

IPv6 地址分类

IPv6 地址分为单播地址、组播地址、任播地址三类,参考华为示图:

img

1、单播地址(unicast)

一个IPv6单播地址可以分为如下两部分(如下图例参考华为示图):

网络前缀(Network Prefix)/网络部分: n bit,相当于IPv4地址中的网络ID。

接口标识(Interface Identify)/主机部分:(128-n)bit ,相当于IPv4地址中的主机ID。

①全球单播地址(GUA—Global Unicast Address)

相当于IPv4的公网地址,也称为可聚合全球单播地址,全球唯一,可路由(可以当做路由传递),可以用于访问互联网需求的主机。

img

②唯一本地地址(ULA—Unique Local Address)

相当于IPv4的私网地址,就是IPv6的私网地址,只能在IPv6内网使用,不能直接访问互联网。

唯一本地地址使用FC00::/7地址块, 目前仅使用了FD00::/8地址段。FC00::/8预留为以后拓展用。

img

③链路本地地址(LLA—Link-Local Address)

传递范围受限制的地址, 只能在当前链路上传递,前缀为FE80::/10。 每一个IPv6接口必须拥有一个link-local地址。

img

IPv6单播地址接口标识的生成方式:

①手工配置

②系统自动生成

③EUI-64生成-----根据接口MAC地址转换生成IPv6的接口标识(长度为64bit),在MAC地址中间插入“FFFE”,将新组成的64比特中第7bit进行0 ,1跳变

img

2、组播地址

IPv6组播地址标识多个接口,一般用于“一对多”的通信场景。IPv6组播地址只可以作为IPv6报文的目的地址。格式为FF00::/8。

img

被请求节点组播地址:

当设备接口配置了单播地址或者任播地址,会自动生成被请求节点组播地址;只能在当前链路内传递。可用于邻居发现和重复地址检测。

固定格式:FF02::1:FF00:0/104+单播地址后24bit

例如:单播地址为2001🔡2::1/64 -------->被请求节点组播地址为FF02::1:FF00:1

3、任播地址

一种特殊的单播地址。标识一组网络接口(通常属于不同的节点)。任播地址可以作为IPv6报文的源地址,也可以作为目的地址。

img

NDP(邻居发现协议)

基于ICMPv6报文实现。

img

①邻居发现/地址解析------根据目的IPv6地址解析对应的MAC地址,类似IPv4的ARP解析MAC地址

img

②重复地址检测 ------发送NS报文检测IPv6地址是否冲突,类似IPv4的免费ARP

img

IPv6配置实验

实验流程

实验拓扑

img

实验流程

  1. 为路由器接口配置 IPv6 地址(包括全局单播地址和自动生成的链路本地地址);
  2. 其次配置 DHCPv6 服务,实现设备通过 DHCP 自动获取 IPv6 地址;
  3. 接着配置无状态地址自动获取,借助 RA 消息携带的地址前缀生成全局地址;
  4. 最后配置静态路由,实现不同网段设备间的通信。

实验步骤

1:配置路由器接口 IPv6 地址(以 R3、R4 为例)

目的:为路由器接口分配全局单播地址,全局下开启 IPv6 能力,自动生成链路本地地址。

R3 配置

ipv6  //全局开启IPv6能力
#
interface GigabitEthernet0/0/0
 ipv6 enable  //接口开启IPv6能力
 ipv6 address 2001:13::3/64  //配置全局单播地址(自动生成链路本地地址)
#
interface GigabitEthernet0/0/1
 ipv6 enable
 ipv6 address 2001:23::3/64
#
interface GigabitEthernet0/0/2
 ipv6 enable
 ipv6 address 2001:34::3/64

R4配置(与R3类似):

ipv6  //全局开启IPv6能力
#
//根据实际接口规划配置对应全局单播地址,如连接R3的接口配置2001:34::4/64等
interface GigabitEthernet0/0/0
 ipv6 enable
 ipv6 address 2001:34::4/64
#
//其他接口按需配置

查看接口ipv6地址可验证配置结果:

img

2:配置 DHCPv6 服务(R3 为服务器,R1 为客户端)

目的:实现客户端(R1)通过 DHCPv6 自动获取 IPv6 地址。

R3(DHCPv6 服务器)配置

dhcp enable  //开启DHCP功能
#
dhcpv6 pool TO_R1  //创建DHCPv6地址池TO_R1
 address prefix 2001:13::/64  //指定地址池网段
 excluded-address 2001:13::3  //排除已手动分配的地址(如R3的接口地址)
#
interface GigabitEthernet0/0/0
 dhcpv6 server TO_R1  //在接口上调用DHCPv6地址池,为该接口所在网段提供服务

R1(DHCPv6 客户端)配置

ipv6  //全局开启IPv6能力
dhcp enable  //开启DHCP功能
#
interface GigabitEthernet0/0/0
 ipv6 enable  //接口开启IPv6能力
 ipv6 address auto link-local  //通过EUI-64方式自动生成链路本地地址
 ipv6 address auto dhcp  //通过DHCPv6自动获取全局单播地址

配置结果验证:

img

3:配置无状态自动获取地址,基于RA消息携带地址前缀通告

目的:客户端(R2)通过路由器(R3)发送的 RA 消息携带的地址前缀,自动生成全局单播地址。

R3(RA 消息发送方)配置

interface GigabitEthernet0/0/1
 undo ipv6 nd ra halt  //关闭RA消息抑制功能,开启RA通告(向网段内发送地址前缀等信息)

R2(无状态地址获取客户端)配置

ipv6  //全局开启IPv6能力
#
interface GigabitEthernet0/0/0
 ipv6 enable  //接口开启IPv6能力
 ipv6 address auto link-local  //自动生成链路本地地址
 ipv6 address auto global  //基于RA消息中的前缀(全局前缀)自动生成全局单播地址

配置结果验证:

img

4:配置静态路由实现跨网段通信(R2 与 R4 互通)

目的:通过静态路由指定转发路径,实现不同 IPv6 网段设备(R2 与 R4)的通信。

R2 配置静态路由

[R2]ipv6 route-static 2001:34:: 64 2001:23::3  //配置ipv6静态路由,指定去往2001:34::/64网段的下一跳为R3的接口地址2001:23::3

R4 配置默认路由

[R4]ipv6 route-static :: 0 2001:34::3  //配置ipv6默认路由,所有未知网段流量均转发至R3的接口地址2001:34::3

配置结果验证(R2和R4互通):

img

参考华为文档,如涉及版权问题,请联系作者删除!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值