前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除
一、相关知识
地址解析协议(Address Resolution Protocol,ARP)用来解决局域网内一个广播域中的IP地址和MAC地址的映射问题;
如图,PC1发送给PC2的IP数据报会经由路由器R1和R2转发,即PC1首先发送给R1(间接交付),然后R1再转发给R2(间接交付),最后R2发送给PC2(直接交付),IP数据报在每条链路上的转发都要封装在MAC帧中进行传输,并且使用的是MAC地址。
ARP的作用就是根据下一跳的IP地址来获取下一跳的MAC地址。ARP请求以MAC广播帧的形式向本地网络广播,ARP响应以MAC单播帧的形式发送给请求方。
APR报文的格式:
ARP报文是直接封装在MAC帧中的,在MAC帧中的类型值为0x0806
为提高效率,主机或路由都设有ARP高速缓存,用来将请求到的映射保存起来且设有时间限制,防止因地址变化且没有及时更新造成发送失败的情况。
在华为路由器设备中执行display arp命令查看ARP映射表:
[Huawei]display arp
IP ADDRESS MAC ADDRESS EXPIRE(M) TYPE INTERFACE VPN-INSTANCE
VLAN
------------------------------------------------------------------------------
------------------------------------------------------------------------------
Total:0 Dynamic:0 Static:0 Interface:0
其中:EXPIRE(M)表示ARP表项的剩余存活时间;TYPE表示表项类型及获取该表项的槽位号:共有3种:I(Interface)表示接口本身的MAC地址;D(Dynamic)表示通过ARP报文获取的动态表项;S(Static)表示通过静态配置获取的静态表项;
可执行reset arp命令来清除ARP映射表中的ARP表项;执行reset arp dynamic命令清除ARP映射表中的动态ARP表项;
<Huawei>reset arp ?
all Reset static and dynamic ARP entry
dynamic Reset dynamic ARP entry
interface Reset ARP entry by interface
packet ARP packet
static Reset static ARP entry
二、建立网络拓扑
路由器R1(Router)、S3700交换机;如果路由器选择AR系列,配置接口的IP地址时,需要在接口模式下执行undo portswitch将默认的二层接口模式转换为三层接口模式,这样才能配置IP地址;
三、分析同一网络内通信时ARP的工作过程
清空PC1的ARP缓存,由PC1 ping PC2,在交换机LSW1的e0/0/2和e0/0/3接口同时抓取数据包。设置显示过滤器,仅显示ARP或ICMP分组,观察交互过程及分组结构:
1、查看交换机接口
在LSW1的E0/0/2接口上捕获的ARP和ICMP分组:
在LSW1的E0/0/3接口上捕获的ARP和ICMP分组:
2、查看PC1发送的ARP请求分组,查看该分组的详细内容与结构:
3、查看PC发送的ARP响应分组
4、抓包分析
四、分析不同网络通信间通信时ARP的工作过程
由PC1 ping PC3,在G0/0/0和G0/0/1接口上抓包观察ARP分组交互过程及分组结构
查看ARP缓存:
<Huawei>display arp
IP ADDRESS MAC ADDRESS EXPIRE(M) TYPE INTERFACE VPN-INSTANCE
VLAN/CEVLAN PVC
------------------------------------------------------------------------------
210.1.1.254 5489-987b-4cdf I - GE0/0/0
210.1.1.1 5489-9810-0e15 19 D-0 GE0/0/0
210.1.2.254 5489-987b-4ce0 I - GE0/0/1
210.1.2.1 5489-981d-13b1 19 D-0 GE0/0/1
------------------------------------------------------------------------------
Total:4 Dynamic:2 Static:0 Interface:2
五、总结
- 在同一网络内通信时,ARP直接询问目的IP地址对应的MAC地址,将IP数据报直接发送给目的主机,即直接交付。
- 不同网络间通信时,ARP只需询问网关IP地址对应的MAC地址,将IP数据报交给网关,由路由器进行转发,即间接交付。
- ARP请求使用的是数据链路层广播,而ARP响应使用的是数据链路层单播。
致谢
在此,我要对所有为知识共享做出贡献的个人和机构表示最深切的感谢。同时也感谢每一位花时间阅读这篇文章的读者,如果文章中有任何错误,欢迎留言指正。
学习永无止境,让我们共同进步!!