本实验感谢计嵌老大哥LYJ的帮助
目录
☀️| 一、实验原理
☀️| 二、实验环境
☀️| 三、实验原理
☀️| 四、实验内容
⭐️练习1——领略真实的ARP(同一子网)
⭐️练习2——编辑并发送ARP报文(同一子网)
⭐️练习3——跨路由地址解析(不同子网)
☀️| 五、实验结果
⭐️练习1
⭐️练习2:
⭐️练习3:
☀️| 六、思考题
⭐️ARP协议的作用?数据报如何封装传输?
⭐️图中ARP报文首部包括哪些字段?
☀️| 一、实验原理
- 掌握ARP协议的报文格式
- 掌握ARP协议的工作原理
- 理解ARP高速缓存的作用
☀️| 二、实验环境
- 吉林中软计算机网络教学平台
- 每6台计算机为一个实验组。
- 使用网络拓扑二,如图2-1所示。
图2-1 网络拓扑二
- 按照网络拓扑二上的标注配置各主机的IP地址,子网掩码全部为255.255.255.0。
- 主机A、C、D的默认网关设为172.16.1.1;主机E、F的默认网关设为172.16.0.1。
- 主机B是双网卡,需要分别配置IP地址。网络连接的IP地址配置为172.16.1.1,网络连接2的IP地址配置为172.16.0.1。这两个连接的默认网关设为空。左端物理接口为物理接口1,右端物理接口为物理接口2。
☀️| 三、实验原理
- 因特网是由各种各样的物理网络通过使用诸如路由器之类的设备连接在一起组成的。主机发送一个数据包到另一台主机时可能要经过多种不同的物理网络。主机和路由器都是在网络层通过逻辑地址来识别的,这个地址是在全世界范围内是惟一的。然而,数据包是通过物理网络传递的。在物理网络中,主机和路由器通过其物理地址来识别的,其范围限于本地网络中。物理地址和逻辑地址是两种不同的标识符。这就意味着将一个数据包传递到一个主机或路由器需要进行两级寻址:逻辑地址和物理地址。需要能将一个逻辑地址映射到相应的物理地址。
- ARP协议(地址解析协议)是“Address Resolution Protocol”的缩写。所谓“地址解析”就是主机在发送帧前将目的逻辑地址转换成目的物理地址的过程。在使用TCP/IP协议的以太网中,ARP协议完成将IP地址映射到MAC地址的过程。
- 图2-2为ARP数据报的报文格式:
图2-2 ARP报文格式
- ARP数据报直接封装在数据链路帧中。例如,在图2-3中,ARP数据包封装在以太网的帧中。类型字段值为0x0806指出了此帧所携带的数据是ARP数据包。
图2-3 ARP数据包的封装
☀️| 四、实验内容
⭐️练习1——领略真实的ARP(同一子网)
- 配置IP地址:
- 按照网络拓扑二上(图2-1)的标注配置各主机的IP地址,子网掩码全部为255.255.255.0。
- 主机A、C、D的默认网关设为172.16.1.1;主机E、F的默认网关设为172.16.0.1。
- 主机B是双网卡,需要分别配置IP地址。网络连接的IP地址为172.16.1.1,网络连接2的IP地址为172.16.0.1。这两个连接的默认网关设为空。左端物理接口为物理接口1,右端物理接口为物理接口2。
- 各主机打开协议分析器,进入相应的网络结构并验证网络拓扑的正确性,如果通过拓扑验证,关闭协议分析器继续进行实验,如果没有通过拓扑验证,请检查网络连接。
- 主机A、B、C、D、E、F启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ARP、ICMP)。
- 主机A、B、C、D、E、F在命令行下运行“arp -d”命令,清空ARP高速缓存。
- 主机A ping 主机D。
- 主机E ping 主机F。
- 主机A、B、C、D、E、F停止捕获数据,并立即在命令行下运行“arp -a”命令察看ARP高速缓存。 ● ARP高速缓存表由哪几项组成? ● 结合协议分析器上采集到的ARP报文和ARP高速缓存表中新增加的条目,简述ARP协议的报文交互过程以及ARP高速缓存表的更新过程。
⭐️练习2——编辑并发送ARP报文(同一子网)
- 本练习将主机A、B、C、D、E、F作为一组进行实验。
- 在主机E上启动协议编辑器,并编辑一个ARP请求报文。其中: MAC层: 目的MAC地址:设置为FFFFFF-FFFFFF 源MAC地址:设置为主机E的MAC地址 协议类型或数据长度:0806 ARP层: 发送端硬件地址:设置为主机E的MAC地址 发送端逻辑地址:设置为主机E的IP地址 目的端硬件地址:设置为000000-000000 目的端逻辑地址:设置为主机F的IP地址
- 主机B、F启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ARP协议)。
- 主机B、E、F在命令行下运行“arp -d”命令,清空ARP高速缓存。主机E发送已编辑好的ARP报文。
- 主机B、F停止捕获数据,分析捕获到的数据,进一步体会ARP报文交互过程。
⭐️练习3——跨路由地址解析(不同子网)
- 本练习将主机A、B、C、D、E、F作为一组进行实验。
- 主机B在命令行方式下输入staticroute_config命令,开启静态路由服务。
- 主机A、B、C、D、E、F在命令行下运行“arp -d”命令,清空ARP高速缓存。
- 主机A、B、C、D、E、F重新启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ARP、ICMP)。
- 主机A ping 主机E。
- 主机A、B、C、D、E、F停止数据捕获,察看协议分析器中采集到的ARP报文,并回答以下问题: ● 单一ARP请求报文是否能跨子网进行地址解析?为什么? ● ARP地址解析在跨越子网的通信中所起到的作用?
- 主机B在命令行方式下输入recover_config命令,停止静态路由服务。
☀️| 五、实验结果
⭐️练习1
图1.1
图1.2
图1.3
图1.4
问题1.ARP高速缓存表由哪几项组成?
答:Ip地址,物理地址,状态。
问题2.结合协议分析器上采集到的ARP报文和ARP高速缓存表中新增加的条目,简述ARP协议的报文交互过程以及ARP高速缓存表的更新过程。
答:假设网络中的主机A要和主机B交换数据,首先主机A要得到主机B的IP地址和MAC地址的映射关系,工作过程如下:
①ARP模块接收来自上层的协议(IP)的数据报后,提取其目的的IP地址。
②主机A检查自己的高速缓存中的ARP表,判断ARP表中是否存有主机B的IP地址与MAC地址的映射关系。如果找到,则完成ARP地址解析;如果没有找到,则转至③。
③主机A广播含有自身IP地址与MAC地址映射关系的请求信息包,请求解析主机B的IP的地址与MAC地址映射关系。
④主机A等待接收ARP应答。
⑤如果主机A没有收到ARP应答,则停止发送数据报;如果收到ARP应答,执行⑥。
⑥主机A收到主机B的响应信息,使用应答中的物理地址(MAC)作为数据报的mac 地址,并将主机B的IP地址与MAC地址的映射关系存入自己的ARP表中,从而完成主机B的ARP地址解析。
⭐️练习2:
图2.1
⭐️练习3:
图3.1
图3.2
问题1. 单一ARP请求报文是否能够跨越子网进行地址解析?为什么?
答:不能,由于ARP请求是以广播的方式进行,而广播报文不能跨越子网,因此,单ARP请求报文不能够跨越子网进行地址解析。
问题2. ARP地址解析在跨越子网的通信中所起到的作用? 答:作用是解析网关的MAC地址,ARP本身无法跨跃不同的网段。
☀️| 六、思考题
⭐️ARP协议的作用?数据报如何封装传输?
- ARP协议的主要功能是将IP地址解析为物理地址。
- ARP报文封装在IP数据报中传送。
⭐️图中ARP报文首部包括哪些字段?
- 字段1:ARP请求的目的以太网地址,全1时,代表广播地址。
- 字段2:发送ARP请求的以太网地址。
- 字段3:以太网帧类型表示后面的数据类型,ARP请求和ARP应答此字段为:0x0806。
- 字段4:硬件地址类型,硬件地址不止以太网一种,是以太网类型时,值为1。
- 字段5:表示要映射的协议地址的类型,要对IPv4地址进行映射,此值为0x0800。
- 字段6和7:表示硬件地址长度和协议地址长度,MAC地址占6字节,IP地址占4字节。
- 字段8:是操作类型字段,值为1,表示进行ARP请求;值为2,表示进行ARP应答;值为3,表示进行RARP请求;值为4,表示进行RARP应答。
- 字段9:是发送端ARP请求或应答的硬件地址,这里是以太网地址,和字段2相同。
- 字段10:是发送ARP请求或应答的IP地址。
- 字段11和12:是目的端的硬件地址和IP地址。