Flow Label-流标签
Hop Limit-跳数限制
GUA(Global Unicast Address)-全球单播地址
LLA(Link-Local Address)-链路本地地址
NDP(Neighbor Discovery Protocol)-邻居发现协议
DAD(Duplicate Address Detection)-重复地址检测
RS-路由器请求
RA-路由器通告
NS-邻居请求
NA-邻居通告
1.背景
随着Internet的扩张和新应用的不断推出,IPv4越来越显示出它的局限性。因为发展太快,IP地址空间耗尽的问题迫在眉睫。20世纪90年代,IETF推出NAT(Network Address Translation,网络地址转换)与CIDR(Classless Inter Domain Routing,无类别域间路由)等技术来推迟IPv4地址耗尽发生的时间点。但是这些过渡方案只能减缓地址枯竭的速度,并不能从根本上解决问题,因此我们引入IPv6技术。
2.概述
IPv6(Internet Protocol Version 6,互联网协议第 6 版)是网络层协议的第二代标准协议,也被称为 IPng(IP Next Generation,下一代 IP),它所在的网络层提供了无连接的数据传输服务。
优势
表示方法
IPv6地址的长度为128 bit。一般用冒号分割为8段,每一段16 bit,每一段内用十六进制表示。
注:IPv6地址中的字母大小写不敏感,例如A等同于a。
与IPv4地址类似,IPv6也用“IPv6地址/掩码长度”的方式来表示IPv6地址。
缩写规则:
包头结构
IPv6包头由一个IPv6基本包头(必须存在)和多个扩展包头(可能不存在)组成。
1)基本包头:提供报文转发的基本信息,会被转发路径上的所有设备解析。
IPv6基本包头字段解释如下:
Version:版本号,长度为4 bit。对于IPv6,该值为6。
Traffic Class:流类别,长度为8 bit。等同于IPv4中的ToS字段,表示IPv6数据包的类或优先级,主要应用于QoS。
Flow Label:流标签,长度为20 bit。IPv6中的新增字段,用于区分实时流量,不同的流标签+源地址可以唯一确定一条数据流,中间网络设备可以根据这些信息更加高效率的区分数据流。
Payload Length:有效载荷长度,长度为16 bit。有效载荷是指紧跟IPv6包头的数据包的其他部分(即扩展包头和上层协议数据单元)。
Next Header:下一个包头,长度为8 bit。该字段定义紧跟在IPv6包头后面的第一个扩展包头(如果存在)的类型,或者上层协议数据单元中的协议类型(类似于IPv4的Protocol字段)。
Hop Limit:跳数限制,长度为8 bit。该字段类似于IPv4中的Time to Live字段,它定义了IP数据包所能经过的最大跳数。每经过一个路由器,该数值减去1,当该字段的值为0时,数据包将被丢弃。
Source Address:源地址,长度为128 bit。表示发送方的地址。
Destination Address:目的地址,长度为128 bit。表示接收方的地址。
2)拓展包头:仅当需要路由器或目的节点做某些特殊处理时,才由发送方添加一个或多个扩展头
Extension Header Length:扩展包头长度,长度为8 bit。表示扩展包头的长度(不包含Next Header字段)。
Extension Header Data:扩展包头数据,长度可变。扩展包头的内容,为一系列选项字段和填充字段的组合。
补充:IPv6报文处理机制
地址分类
根据IPv6地址前缀,可将IPv6地址分为为单播地址、组播地址和任播地址。
1)单播地址:标识一个接口,目的地址为单播地址的报文会被送到被标识的接口
网络前缀(Network Prefix):n bit,相当于IPv4地址中的网络ID。
接口标识(Interface Identify):(128-n)bit ,相当于IPv4地址中的主机ID,可通过三种方法生成:a.手工配置b.系统自动生成c.通过IEEE EUI-64规范生成,其中EUI-64规范最为常用,此规范将接口的MAC地址转换为IPv6接口标识。
注:常见的IPv6单播地址如全球单播地址、链路本地地址等,要求网络前缀和接口标识必须为64 bit。
常见单播地址:
GUA(Global Unicast Address,全球单播地址),也被称为可聚合全球单播地址。该类地址全球唯一,用于需要有互联网访问需求的主机,相当于IPv4的公网地址。
通常GUA的网络部分长度为64 bit,接口标识也为64 bit。
全局路由前缀:由提供商指定给一个组织机构,一般至少为45 bit。
子网ID:组织机构根据自身网络需求划分子网。
接口标识:用来标识一个设备(的接口)。
ULA(Unique Local Address,唯一本地地址)是IPv6私网地址,只能够在内网中使用。该地址空间在IPv6公网中不可被路由,因此不能直接访问公网。
唯一本地地址使用FC00::/7地址块,目前仅使用了FD00::/8地址段。FC00::/8预留为以后拓展用。
ULA虽然只在有限范围内有效,但也具有全球唯一的前缀(虽然随机方式产生,但是冲突概率很低)。
LLA(Link-Local Address,链路本地地址)是IPv6中另一种应用范围受限制的地址类型。LLA的有效范围是本地链路,前缀为FE80::/10。
LLA用于一条单一链路层面的通信,例如IPv6地址无状态自动配置、IPv6邻居发现等。
源或目的IPv6地址为链路本地地址的数据包将不会被转发到始发的链路之外,换句话说,链路本地地址的有效范围为本地链路。
每一个IPv6接口都必须具备一个链路本地地址。华为设备支持自动生成和手工指定两种配置方式。
2)组播地址:标识多个接口,目的地址为组播地址的报文会被送到被标识的所有接口
Flags:用来表示永久或临时组播组。
Scope:表示组播组的范围。
Group ID:组播组ID。
注:IPv6组播地址只可以作为IPv6报文的目的地址。
被请求节点组播地址:当一个节点具有了单播或任播地址,就会对应生成一个被请求节点组播地址,并且加入这个组播组。该地址主要用于邻居发现机制和地址重复检测功能。被请求节点组播地址的有效范围为本地链路范围。
3)任播地址:任播地址标识一组网络接口(通常属于不同的节点)
注:任播地址可以作为IPv6报文的源地址,也可以作为目的地址。
任播过程:
任播报文的发起方通常为请求某一服务(例如,Web服务)的主机。
任播地址与单播地址在格式上无任何差异,唯一的区别是一台设备可以给多台具有相同地址的设备发送报文。
优势:业务冗余;提供更优质的服务
想要配套真题和笔记的朋友们点赞+关注,评论区留下邮箱发给你!
三、IPv6地址配置
1.主机和路由器的IPv6地址:
2.IPv6单播地址业务流程:
一个接口在发送IPv6报文之前要经历地址配置、DAD、地址解析这三个阶段,NDP(Neighbor Discovery Protocol,邻居发现协议)扮演了重要角色。
NDP:邻居发现协议NDP(Neighbor Discovery Protocol)是IPv6协议体系中一个重要的基础协议。邻居发现协议替代了IPv4的ARP(Address Resolution Protocol)和ICMP路由器发现(Router Discovery),它定义了使用ICMPv6报文实现地址解析,邻居不可达性检测,重复地址检测,路由器发现,重定向以及ND代理等功能。
1)地址配置:
动态地址配置:IPv6支持地址有状态(stateful)和无状态(stateless)两种自动配置方式,通过ICMPv6 RA报文中的M标记(Managed Address Configuration Flag)和O标记(Other Stateful Configuration Flag)来控制终端自动获取地址的方式。
有状态地址配置(DHCPv6 ),M=1,O=1:
DHCPv6,IPv6客户端将从DHCPv6服务器端获取完整的128 bit IPv6地址,同时包括DNS、SNTP服务器等地址参数。
DHCPv6服务器端将会记录该地址的分配情况(这也是为什么被称为有状态)
无状态地址配置,M=0,O=0:
ICMPv6协议
使能了ICMPv6 RA功能的路由器会周期性的通告该链路上的IPv6地址前缀。
另一种情况,主机发送路由器查询(ICMPv6 RS)报文,路由器回复RA报文告知该链路IPv6地址前缀
2)DAD:无论通过何种方式配置了IPv6单播地址,主机或路由器都会:通过ICMPv6报文进行DAD;仅当DAD通过之后才会使用该单播地址
假设R1为已在线设备,IPv6地址为2001::FFFF/64。PC上线之后,也配置了相同的IPv6地址,在正式使用这个地址之前,PC会对此地址做DAD,过程如下:
3)地址解析:IPv6使用ICMPv6的NS和NA报文来取代ARP在IPv4中的地址解析功能。
假设PC想要解析R1的2001::2这个地址对应的MAC地址,详细过程如下:
想要配套真题和笔记的朋友们点赞+关注,评论区留下邮箱发给你!
1.基本配置:
1.使能IPv6 .
[Huawei] ipv6
使能设备转发IPv6单播报文,包括本地IPv6报文的发送与接收。
[Huawei-GigabitEthernet0/0/0] ipv6 enable
在接口视图下,在接口上使能该接口的IPv6功能。
2.配置 接口的链路本地地址
[Huawei-GigabitEthernet0/0/0] ipv6 address ipv6-address link-local
[Huawei-GigabitEthernet0/0/0] ipv6 address auto link-local
在接口视图下,通过手工或者自动的方式,配置接口的链路本地地址。
3.配置接口的全球单播地址
[Huawei-GigabitEthernet0/0/0] ipv6 address { ipv6-address prefix length| ipv6-adress/ prefix-length}
[Huawei-GigabitEthernet0/0/0] ipv6 address auto { global | dhcp }
在接口视图下,通过手工或者自动(有状态或无状态)的方式,配置接口的全球单播地址。
4.配置IPv6静态路由
[Huawei]ipv6 route-static dest-ipv6-address prefix-length { interface-type interface-number [ nexthop-ipv6-address ] | nexthop-ipv6-address } [ preference preference ]
6.查看邻居表项信息
[Huawei]display ipv6 neighbors
7.使能系统发布RA报文功能
[Huawei-GgabiEthernet0/0/0]undo ipv6 nd ra halt
默以情况下,华为路由器接口不发送(CICMPv6 RA报文,则该接口所连链链路上的其他设备天无法进行无状态地址自动配置.若想进行IPv6无状态地址配置,需要手工开启发送RA报文。
2.实例:配置一个小型的IPv6网络
1)实验拓扑
2)配置需求
a.R1和R2之间使用静态IPv6地址互联。
b.R2作为DHCPv6服务器给R3的GE0/0/0分配全球单播地址。
c.R4的GE0/0/0接口通过R2的RA进行无状态地址自动配置。
d.配置静态路由,实现各设备之间互访。
3)配置
a.
在R1、R2、 R3、R4全局和相关接口使能IPv6功能,同时自动生成链路本地地址(以R1配置为例)
[R1]ipv6
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ipv6 enable
[R1-GigabitEthernet0/0/0]ipv6 address auto link-local
在R1、R2相应接口配置静态IPv6全球单播地址
[R1]interface GigabitEthernet ,0/0/0
[R1-GigabitEthernet0/0/0]ipv6 address 2001:1 64
[R2]interface GigabitEthernet 1/0/0
[R2-GigabitEthernet1/0/0]ipv6 address 2001::2 64
[R2-GigabitEthernet1/0/0]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ipv6 address 2002::1 64
[R2-GigabitEthernet0/0/0]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]ipv6 address 2003:1 64
b.
在R2上配置DHCPv6服务器功能,R3接口通过DHCPv6方式获取全球单播地址
[R2]dhcp. enable
[R2]dhcpv6 pool pool1
[R2-dhcp6-plopool]address prefix 202:/64
[R2]interface GigabitEthemet 0/0/0
[R2-GigabitEthernet0/0/0]dhcpv6 server pool1
[R3]dhcp enable
[R3]interface GigabitEthermet 0/0/0
[R3-GigabitEthernet0/0/0lipv6 address auto dhcp,
c.
在R2使能发布RA报文的功能,R4通过无状态地址配置的方
式获取地址
[R2]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]undo ipv6 nd ra halt
[R4]interface GigabitEthernet 0/0/0
[R4-GigabitEthernet0/0/0]ipv6 address auto global
d.
在R4_上配置静态路由
[R4]ipv6 route-static 2001: 64 2003::1
[R4]ipv6 route-static 2002:: 64 2003::1
在R1.上配置聚合后的静态路由
[R1]ipv6 route-static 2002:: 15 2001::2
在R3_上配置默认路由
[R3]ipv6 route-static : 0 2002:1