您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 房地产 > 实验7-分析ARP协议
30实验7:分析ARP协议1.实验目的1)深入理解地址解析协议(ARP)的工作原理。2)理解IP和以太网协议的关系,掌握IP地址和MAC地址的映射机制,搞清楚IP报文是如何利用底层的以太网帧进行传输的。2.实验环境1)运行Windows2008Server/WindowsXP/Windows7操作系统的PC一台。2)PC具有以太网卡一块,通过双绞线与网络相连;或者具有适合的踪迹文件。3)每台PC运行程序协议分析仪Wireshark。3.实验步骤1)查看本机因特网硬件地址ipconfig是Windows操作系统中调试网络配置的常用命令,其主要功能包括显示主机的网络配置信息(通过/all参数)、释放获得的IP地址信息(通过/release参数),或者重新获取ip地址信息(通过/renew参数)等。本次实验主要学习使用ipconfig查看计算机网卡的物理地址,对其他功能感兴趣的读者可以通过ipconfig/?命令查看相应的使用帮助。ipconfig基本命令在“运行”窗口中输入“cmd”后,在打开的“命令提示符”窗口中输入“ipconfig31/all”命令,可以看到类似于图所示的有关网络连接的信息。其中,主机的名字为Jess,以太网络适配器为QualcomnAtherosAR0152PCI-EFastEthernetController,其MAC地址为F0-4D-A2-42-47-BC,DHCP功能开启,IP地址为192.168.1.102,掩码为255.255.255.0,默认网关是192.168.1.1,DNS服务器是50.20.127.28和50.20.127.170。2)使用ARP命令通过ARP命令能够显示和修改ARP高速缓存中IP地址和MAC地址的映射表,与ipconfig类似,该命令同样包含多种参数,可以首先在“命令提示符”界面中输入“arp/?”查看ARP命令的使用帮助,如图32所示。ARP帮助信息32由图可以看到,ARP命令主要功能包括显示当前ARP高速缓存中全部的IP地址和MAC地址映射信息、删除当前ARP高速缓存中的地址映射信息、以及增加一条静态地址映射信息等,下面分别对这3个主要功能加以说明。在“命令提示符”界面中键入“arp–a”指令,可以查看本机ARP表中的全部内容,如图所示。可以看到,在ARP高速缓存表中每个表项包括3个部分:主机IP地址,主机物理地址以及表项类型,其中表项类型中dynamic表明该表项状态为动态更新,一段时间未刷新将会被删除,static表明该表项为静态绑定,除非主动删除该表项将一直存在。查看本机ARP缓存表中信息“arp–d”命令用于主动清除ARP表中的全部记录,如图34所示,执行过“arp–d”命令后,再次执行“arp–a”命令可以发现系统提示不存在ARP表项。主动清空ARP表项如果仅希望删除ARP表中的部分表项,可以在“arp–d”命令后加相应的IP地址参数,例如“arp–d26.28.249.254”将仅删除ARP表中IP地址为26.28.249.254的表项。33“arp–s”命令允许人们手工在ARP表项中增加一条IP地址和物理地址的绑定记录,其命令格式为“arp–s26.28.249.100-12-36-fe-eb-dc”,如图35所示,执行该命令后,在ARP表中增加了一条表项,并且其类型字段为static,表明是一个静态绑定的表项。手工添加一条静态ARP表项3)分析ARP协议工作过程(1)在实验室中选择两台相连的计算机,清除ARP表中的所有项目。本次实验选择IP地址为192.168.1.102的主机A和192.168.1.101的主机B进行实验,首先在主机A与B上分别执行“arp–d”命令清除ARP表中的所有项目,如图所示。34清空主机ARP表项(2)在主机A上运行Wireshark程序,执行包俘获操作。(3)从主机A向主机B发送Ping包,稍后停止发Ping包。分别检查两台主机的ARP表中项目。如图37所示,可以发现此时主机A的ARP表项中增加了一条关于主机B的表项,检查主机B的ARP表可以发现类似结论。查看主机ARP表项(4)从俘获的分组中找出ARP报文,并分析ARP协议执行的全过程,画出或写出ARP协议报文的交互过程,分析实验结果和现象。35ARP请求报文分析图显示了本次通信过程的分组俘获情况,并且为了清晰起见,运用arp作为过滤器,以便只显示通信过程中的ARP报文,分析发现报文57为主机A发送的ARP请求报文,进一步分析其报文结构可以发现,ARP报文是封装在以太帧中传输,并且在以太帧中协议类型为0x0806,其源MAC地址为主机A的MAC地址f0:4d:19:a9:e4:8c,目的MAC地址为广播地址ff:ff:ff:ff:ff:ff,表明ARP请求报文是一个广播帧。ARP协议中硬件类型为以太网,协议类型为IP,硬件地址和协议地址的长度分别为6字节(48bitsMAC地址)和4字节(32bitsIP地址),操作类型为ARP请求报文(0x0001),发送方的MAC地址和IP地址分别为f0:4d:19:a9:e4:8c和192.168.1.102,目标方的MAC地址未知(全0填充),IP地址为192.168.1.101。报文58为主机B向主机A发送的ARP应答报文,图39给出了其详细结构,可见其同样是封装在以太帧中传输,但源MAC地址为主机B的MAC地址20:89:84:20:93:bb,目的MAC地址为主机A的MAC地址f0:4d:19:a9:e4:8c。ARP操作类型为ARP应答报文(0x0002),发送方的MAC地址和IP地址分别为20:89:84:20:93:bb和192.168.1.101,目标方的MAC地址为f0:4d:19:a9:e4:8c,IP地址为192.168.1.102。36ARP应答报文分析完成上述交互过程后,通信双方均已获得彼此的MAC地址,随后即可以进行正常通信。思考:在本次通信过程中,为何只有主机A到主机B的ARP请求?主机B是如何获得主机A的MAC地址的?因为发送方已经将自己的IP和MAC地址广播的方式发送出去,等待主机B的回应。4.相关概念每一个主机都设有一个ARP高速缓存(ARPcache),里面有所在的局域网上的各主机和路由器的IP地址到硬件地址的映射表,这些都是该主机目前知道的一些地址。例如,当主机A欲向本局域网上的某个主机B发送IP数据报时,就先在其ARP高速缓存中查看有无主机B的IP地址。如有,就可以查出其对应的硬件地址,再将此硬件地址写入MAC帧,然后通过局域网把该MAC帧发往此硬件地址。若查不到主机B的IP地址的项目,主机A就自动运行ARP,向所在局域网广播一个ARP查询,查询主机B的硬件地址,该查询中包含主机B的IP地址。主机B在应答中包含其硬件地址,主机A将B的硬件地址添加到其ARP缓存中供以后使用。5.注意事项371)除本次实验用到的功能外,ipconfig命令与arp命令均还有一些强大功能,读者可以参阅两条命令的帮助文件学习其他功能的用法。2)当网络规模较大时,Wireshark会俘获很多与本实验无关的通信分组,可以在过滤器中设置相应过滤条件以便于分析。6.实验小结通过该实验数量掌握了在cmd模式下应用arp指令的方法,以及理解了ARP协议的内容。
本文标题:实验7-分析ARP协议
链接地址:https://www.777doc.com/doc-6140610 .html