理解ARP协议的工作原理 掌握ARP、ICMP 处理过程。
(1)利用Packet Tracer仿真软件搭建一个互联网。
(2)查看、配置主机和相关网络设备的参数。测试网络连通性,捕获ARP包,观察ARP包在流入设备和流出设备时的变换情况。观察各设备收到ARP包的处理方式以及相关设备ARP表的变换情况。
(1)建立如图 4-1 所示实验拓扑结构,按照表 4-1 中 IP 地址和子网掩码信息给每一台 PC 配置 IP 地 址以及掩码(可以自己设置其它的 IP 地址),MAC 地址请根据自己建立的网络拓扑图中每台 PC 实际的 MAC 地址如实填写(注意:MAC 地址每个人的都不一样)。
表 4-1 设备/接口参数表
设备/接口 |
连接交换机的端口 |
IP地址 |
子网掩码 |
MAC地址 |
PC0 |
FastEthernet 0/1 |
192.168.1.11 |
255.255.255.0 |
00E0.8F39.6248 |
PC1 |
FastEthernet 0/2 |
192.168.1.111 |
255.255.255.0 |
0050.0F25.7DB8 |
PC2 |
FastEthernet 0/1 |
172.16.1.11 |
255.255.0.0 |
0000.0CD6.9AE3 |
PC3 |
FastEthernet 0/2 |
172.16.1.111 |
255.255.0.0 |
00D0.D33B.A7AD |
路由器(左)接口 |
FastEthernet 0/3 |
192.168.1.1 |
255.255.255.0 |
00D0.BC5A.1701 |
路由器(右)接口 |
FastEthernet 0/3 |
172.16.1.1 |
255.255.0.0 |
00D0.BC5A.1702 |
(2)实验之前,先查看arp缓存,如果不为空,请先清空arp缓存。按表4-2测试各主机或接口的连通性(从工具栏中选择“Add Simple PDU”工具,并完成相关内容,然后依次点击“源主机”、“目的主机”,表示“源主机 ping 目的主机”(也可以打开PC 机的命令行界面,输入 “ping 目标ip地址”))。注:主机ARP表的操作方式。点击“PC”进入主机“Desktop”页面,如图4-2所示,然后 点击“Command Prompt” 进入主机的命令行(CMD)界面如图4-3所示。在主机CMD界面可以输 入“arp -a”查看arp缓存,“arp -d”清空arp缓存。
表4-2 ARP缓存表
源主机<-->目的主机 <-->:源主机和目的主机 之间的通信 -->:源主机向目的主机发送数据 <--:目的主机向原主机响 应(返回)数据 |
发送主机初始ARP表 |
接收主机初始ARP表 |
(接收端)收到发送ARP请求后ARP 表的变化情况 |
(发送端)收到 ARP响应后ARP 表的变化情况 |
|
PC0<-->PC1
|
PC0-->PC1
|
无ARP缓存表 |
无ARP缓存表 |
出现了ARP缓存表 |
出现了ARP缓存表 |
PC0<--PC1
|
无ARP缓存表 |
无ARP缓存表 |
出现了ARP缓存表 |
出现了ARP缓存表 |
|
PC0<-->PC2
|
PC0-->PC2
|
无ARP缓存表 |
无ARP缓存表 |
无ARP缓存表 |
无ARP缓存表 |
PC0<--PC2
|
无ARP缓存表 |
无ARP缓存表 |
无ARP缓存表 |
无ARP缓存表 |
(3)先查看arp缓存,如果不为空,请先清空arp缓存。点击 切换到模拟器/simulation模式下,按表4-3测试各主机或接口的连通性(从工具栏中选择“Add Simple PDU”工具),并完成相关内容,然后依次点击“源主机”、“目的主机”,表示“源主机 ping 目的主机”(也可以打开PC机的命令行界面,输入 “ping 目标ip地址”))。在事件列表过滤器(Event List Filter)中,仅仅选择ARP、ICMP 报文。点击“Capture / Play”按钮,观察ARP Request 报文处理过程。
表4-3 ARP报文相关字段内容
源主机<-->目的主机 <-->:源主机和目的主机 之间的通信 -->:源主机向目的主机发送数据 <--:目的主机向原主机响 应(返回)数据 |
ARP类型及 以太网帧 源MAC目的 |
以太网帧目的MAC地址 |
TARGET IP |
TARGET MAC |
谁响应 ARP请 求?“--” 处不填 |
|
PC0<-->PC1
|
PC0-->PC1
|
普通ARP |
00E0.8F39.6248 |
192.168.1.111 |
0050.0F25.7DB8 |
-- |
|
PC0<--PC1
|
普通ARP |
0050.0F25.7DB8 |
192.168.1.11 |
00E0.8F39.6248 |
PC0 |
PC0<-->PC2
|
PC0-->PC2
|
代理ARP |
00E0.8F39.6248 |
192.168.1.111 |
0000.0CD6.9AE3 |
-- |
|
PC0<--PC2
|
代理ARP |
0000.0CD6.9AE3 |
172.16.1.11 |
00E0.8F39.6248 |
PC0 |
思考题1:当PC0 的ARP 表中没有PC1 的IP/MAC 表项时,PC0 ping PC1 时将首先发送什么报文, 如果PC0 的ARP 表中有PC1 的IP/MAC 表项,情况又会怎么样?
思考题2:交换机对ARP 请求报文如何处理?
(1)PC0 ping PC1,实际上就是PC0 给PC1 发送ICMP 请求报文。在PC0 发送ICMP Request
的时候,PC0 将检查自己的ARP 表项中有没有PC1 的IP 对应的MAC 地址,如果有,那么PC0 将
直接封装以太网帧,如果没有,那么PC0 将无法封装以太网帧,首先需要通过发送ARP 报文,
希望PC1 告诉PC0:“PC1 的MAC 地址是多少”。
(2)ARP 请求报文是一个广播报文,根据交换原理,交换机将对广播报文进行泛洪处理;
(3)交换机在没有进行Vlan 划分的情况下,交换机的所有端口处于一个广播域中,在实
验拓扑图中PC0、PC1、PC2、PC3、路由器router0 的Fast Ethernet 0/0 在一个广播域中,所
以PC1、PC2、PC3、路由器router0 的Fast Ethernet 0/0 都能收到PC0 发送的ARP Request 报
文。
(4)一个设备收到广播报文之后,根据以太网帧头中类型字段“0806”,去掉帧头将Load
部分提交给ARP 协议栈模块处理。ARP Request 报文中包含了目的IP 地址,请求目的IP 地址
的主机答复MAC 地址。所以如果主机收到ARP 报文中目的IP 地址是自己,那么它将负责答复
ARP 请求者“关于他的MAC 地址是”,这个答复就是ARP Reply 报文。
(5)一个ARP Request 报文不会是请求自身的MAC 地址。因为在一个设备CPU 协议栈中,
总存在自身的CPU 协议栈IP、MAC 地址,请求的总是同一网段其他设备的MAC。
思考题3:PDU(协议数据单元)在网络中传输过程中,MAC 将发生怎样的改变?
根据交换原理,PDU 在跨网段传输时,PDU 从一个网段发送到下一个地址时,源MAC 地址
是发送者自身的MAC 地址,目的地址是下一跳地址的MAC 地址。PC0 给PC4 发送ICMP报文时,
PC0 在172.16.10.0/24 网段,PC4 在172.16.11/24 网段。PC0 给PC4 发送ICMP 报文时,帧
头的MAC 地址变化过程如下:
a:PC0 首先将ICMP Request 报文发送给router0 的Fast Ethernet0/0,源MAC 是PC0 自
己的MAC 地址0090.21C8.BA23,目的MAC 是router0 的Fast Ethernet0/0 接口MAC 地
址0006.2a7e.391d;
b:路由器将PC0 的ICMP Request 报文发送给PC4 的时候,源MAC 地址是router0 的
FastEthernet0/1 的接口MAC 地址00E0.8F68.5653,目的MAC 是PC4 的MAC 地址
0001.4251.AA42;
c:PC4 答复PC0 的ICMP Reply 报文,在传输过程中MAC 变化反之亦然。
(1)刚开始看ARP缓存表的时候有点没看明白,后来看了实验指导书才明白。
(2)ARP报文格式需要好好理解。
(3)ARP报文结构一开始没有看懂,然后查阅了资料才看懂。
(1)建立如图 4-1 所示实验拓扑结构,按照表 4-1 中 IP 地址和子网掩码信息给每一台 PC 配置 IP 地 址以及掩码(可以自己设置其它的 IP 地址),MAC 地址请根据自己建立的网络拓扑图中每台 PC 实际的 MAC 地址如实填写(注意:MAC 地址每个人的都不一样)。
(2)实验之前,先查看arp缓存,如果不为空,请先清空arp缓存。按表4-2测试各主机或接口的连通性(从工具栏中选择“Add Simple PDU”工具,并完成相关内容,然后依次点击“源主机”、“目的主机”,表示“源主机 ping 目的主机”(也可以打开PC 机的命令行界面,输入 “ping 目标ip地址”))。注:主机ARP表的操作方式。点击“PC”进入主机“Desktop”页面,如图4-2所示,然后 点击“Command Prompt” 进入主机的命令行(CMD)界面如图4-3所示。在主机CMD界面可以输 入“arp -a”查看arp缓存,“arp -d”清空arp缓存。
(3)先查看arp缓存,如果不为空,请先清空arp缓存。点击 切换到模拟器/simulation模式下,按表4-3测试各主机或接口的连通性(从工具栏中选择“Add Simple PDU”工具),并完成相关内容,然后依次点击“源主机”、“目的主机”,表示“源主机 ping 目的主机”(也可以打开PC机的命令行界面,输入 “ping 目标ip地址”))。在事件列表过滤器(Event List Filter)中,仅仅选择ARP、ICMP 报文。点击“Capture / Play”按钮,观察ARP Request 报文处理过程。