实验名称:IPv6 DAD和地址解析实验
YESLAB数通学员:张成才
实验目的
1、观察并分析IPv6 DAD过程
2、观察并分析IPv6地址解析过程
实验拓扑
实验步骤
1:观察并分析IPv6地址解析过程
在AR1的G0/0/0开启抓包。AR1的G0/0/0接口配置ipv6地址2012::1/64。在接口配置ipv6地址后,ipv6有一段称为Tentative生命期,在该阶段要进行DAD,即重复地址检测,确认没有其他设备在使用该地址,该地址才能正常用于数据通信。
通过抓包可以发现有两个NS报文,这是因为除了手动配置的2012::1/64地址外,接口还通过EUI-64规范自动生成了一个link-local地址。下面以手工配置的2012::1/64来分析DAD过程。
在Cisco设备上如果接口发出DAD的NS报文,在1S后未收到NA报文的话,接口会主动再发送一个Solicited bit=0的NA报文,然后该地址即进入正式可用的状态。华为设备在发出NS报文后如果没有收到NA报文,不再主动发送NA报文,在经过Tentative阶段后(具体时间未知)即进入正式可用阶段。
如果其他设备(这里就以R2为例)在收到该NS报文后,发现2012::1/12是自身的一个Tentative地址,则R2放弃使用该地址,并且不会发送NA报文。
如果R2收到NS报文后,发现发现2012::1/12是自身正常使用的一个地址,那么R2会向All-Nodes组播组发送一个NA报文,该报文中Target Address为2012::1/64,这样R1收到该NS报文后就放弃使用该地址。
此处在R2的G0/0/0接口配置IPv6地址2012::1/64。
通过抓包可以发现R1主动(solicited bit=0)回复了NA报文,这样R2在收到该报文后就放弃使用该地址。
2: 观察并分析IPv6地址解析过程
在ipv4环境下使用arp来请求对方的二层地址,在ipv6环境下使用邻居发现中的地址解析来请求对方的二层地址,并且一次请求双方即可同时学习到对方的二层地址。用于地址解析NS和NA报文属于三层报文,不同的二层介质可以采用相同的地址解析协议,并可以使用三层的安全机制(例如IPSec)避免地址解析***。 IPv6使用组播方式发送请求报文,减少了二层网络的性能压力。
修改R2的ip为2012::2/64,在R1上ping R2,同时在R1的G0/0/0开启抓包。
R1在ping前首先通过NS报文请求R2的二层地址:
R2收到NS报文后,解封装通过Target Address字段发送时请求自己的MAC地址,于是回用NA报文。
R1正确得到R2的链路层地址后即可进行正常的通信,后续的ping成功。
在R1上查看IPv6的邻居状态:
对于链路本地地址也是通过地址解析过程得到对应的链路层地址:
至此R1和R2通过一次地址解析相互学习到了对方的链路层地址。
实验心得:
1、实验的难点是哪里?
2、实验过程中遇到了什么问题,如何解决的。是什么原因造成的。
3、通过实验是否验证了理论所学?是否纠正了之前的理解。
心得不限。根据实际情况书写。
更多问题请联系QQ 2852378190
来源:51CTO
作者:Hansl2100
链接:https://blog.51cto.com/14476517/2472306