实验介绍
IPv6(Internet Protocol Version 6)也被称为IPng(IP Next Generation)。它是Internet工程任务组IETF(Internet Engineering Task Force)设计的一套规范,是IPv4(Internet Protocol Version 4)的下一代版本。
相比较于IPv4,IPv6具有如下优势:
• 近乎“无限”的地址空间
• 层次化的地址结构
• 即插即用
• 简化的报文头部
• 安全特性
• 移动性
• 增强的QoS特性等
我这里截图了三张华为关于IPv6图,我觉得比较适合HCIA的朋友们看一下,至少你除了考证 要知道这些基础的知识。
• 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。表示接收方的地址。
拓展包头这个我感觉应该不属于HCIA的课程范围,但我也不知道考证用不用的上,所以大家还是看一下。但是基本包头大家是要理解和学习的。
等会我们抓包分析一下IPv6的报文。
组播和任播地址暂时好像不属于华为的HCIA课程范围,HCIP有没有我忘了 但是HCIE一定是有的。
实验目的
掌握静态IPv6地址的配置方法
掌握DHCPv6服务的配置方法
掌握无状态地址配置方法
掌握IPv6静态路由的配置方法
掌握IPv6相关信息查看方法
实验组网介绍
实验要求:
1. R2的两个接口均采用静态IPv6地址配置方法
2. R3的GigabitEthernet0/0/2接口采用DHCPv6的方式配置IPv6地址
3. R1的GigabitEthernet0/0/1接口采用无状态地址配置
4.配置R1-R3的静态路由
实验配置:
1. R2的两个接口均采用静态IPv6地址配置方法
1.1 配置设备及接口IPv6功能
开启IPV6的功能,这里我把ipv6的一些参数用?的形式显示了出来,因为我们后面要做静态路由,会用到。大家到时候也可以看看ipv6和ipv4做静态路由的时候有什么区别。
开启接口的IPv6功能
这3个参数是我们需要重点关注的。 还有个nd address 和enable
1.2 配置接口自动生成link-local地址
ipv6 address auto link-local命令用来为接口配置自动生成的链路本地地址。(定义在fe80::/10地址网段)
每个接口只能有一个链路本地地址,为了避免链路本地地址冲突,推荐使用链路本地地址的自动生成方式。当接口配置了IPv6全球单播地址后,同时会自动生成链路本地地址。
这三个参数大家都要看一下,等会会用到。
配置R2的静态IPv6地址
2. R3的GigabitEthernet0/0/2接口采用DHCPv6的方式配置IPv6地址
2.1 因为R3的g0/0/2接口是要用DHCP自动获取的模式,那么我们是不是要先在R2上门开启DHCP功能,并配置地址池?
大家可以看一下地址池的配置,是不是感觉和ipv4的不一样。大家可以理解为ipv6对于地址前缀的定义等于ipv4定义地址池网段的命令。
大家是不是发现这里少了一个gateway-list ,不要急,我们后面会解释这个问题。
为了方便大家理解,我这里给大家截图一下。电信的公网ip地址是:240e::/20
如果不能理解也没事,你先暂时会用也行。因为看我HCIA实验的朋友,基础相对比较薄弱,所以工作中学习了之后,再回过头来看,可能有不一样的理解。
DHCPv6 Client配置
此时我们配置好了DHCPv6的server ,我们需要去R3上面的g0/0/2接口开启DHCPv6功能,来获取地址。
大家可以看到 如果我没有配置接口的链路本地地址,那么是无法自动获取。他会提示报错,ipv6 链路本地地址没有在这个接口上创建。
那么 我们都配置好了之后,我们可以查看一下G0/0/2的接口信息,看下ipv6的地址获取到了没,链路本地地址是什么。
DHCPv6服务器不会为DHCPv6客户端分配IPv6网关地址。
当配置为DHCPv6有状态方式时,DHCPv6客户端通过ipv6 address auto global default命令学习到IPv6网关的缺省路由;当配置为DHCPv6无状态方式时,DHCPv6客户端通过该命令学习全球单播IPv6地址和IPv6网关的缺省路由。需确保与其相连的对端设备的接口已通过命令undo ipv6 nd ra halt,使能发布RA报文的功能 默认情况下路由器的接口不会发送 我们这条命令 就是让他开启。
ipv6 nd autoconfig managed-address-flag命令用来设置RA报文中的有状态自动配置地址的标志位,默认情况下不设置该位。
• 如果设置了该标志位,则主机通过有状态自动配置获得IPv6地址。
• 如果清除了该标志位,则主机通过无状态自动配置获得IPv6地址,即通过RA报文向主机发布IPv6地址前缀信息自动生成IPv6地址。
ipv6 nd autoconfig other-flag命令用来设置RA报文中的有状态自动配置其他信息的标志位,默认情况下不设置该位。
• 如果设置了该标志位,则主机可通过有状态自动配置获得除IPv6地址外的其他配置信息,包括路由器生存时间、邻居可达时间、邻居的重传时间、链路的MTU信息。
• 如果清除了该标志位,则主机进行无状态自动配置。即路由设备通过RA报文向主机发布除IPv6地址外的其他配置信息,包括路由器生存时间、邻居可达时间、邻居的重传时间、链路的MTU信息。
配置R3客户端通过RA报文学习默认路由
我们可以观察一下 ipv6的路由表
然后我们测试一下,发现OK
3. R1的GigabitEthernet0/0/1接口采用无状态地址配置
配置R1通过无状态方式配置IPv6地址
然后我们查看一下ipv6地址:
有人可能会问,这个无状态的地址生成他有规律吗?
有的,大家发现了没,他是根据R2的RA报文获取的IPv6地址前缀,加上本地生成的接口ID(本地链路地址),生成了IPv6全球单播地址。
最后一个知识点:ipv6的静态路由
如果我们要R1和R3 能通信怎么办?
表示我到2000:23:: 64 这个网段 的下一跳为 2000:12::2,也就是接口R2的接口0/0/1
同时R3通过R2的DHCPv6获取了默认路由,故R1和R3的GigabitEthernet0/0/3接口之间可以互相访问。
这篇随笔还是比较难理解的,因为大家很多人实际上还是接触的IPv4居多,但是ipv6今后会使用的越来越多的,还是好好看一下吧。(比如现在很多的wifi实际上就已经只使用ipv6的地址了)
另外我觉得这个实验只是加深大家对ipv6的理解,不代表你只看这个就行了。
然后我们抓个包看一下
可以对照着学习资料看一下。就明白了,我举个例子:
▫ Version:版本号,长度为4 bit。对于IPv6,该值为6。 这个6从十进制换成2进制就是0110
hcia的ipv6的实验到此结束。
实验拓扑图和配置:
链接:https://pan.baidu.com/s/1T-7fE0vcOQ8WMf8Yf0F9Rw?pwd=HCIA
提取码:HCIA