ARP协议

ARP协议
ARP协议是是一个介于数据链路层和网络层之间的协议。
它工作在网络层。

ARP协议建立了主机IP地址和MAC地址的映射关系
在网络通信时,源主机的应用程序应该知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址。
数据包肯定先被网卡接收到再去处理上层协议的,如果接受到的数据包的硬件地址与本机不符,则直接丢弃。

ARP协议的工作流程
如下图是ARP的工作流程:
这里写图片描述

1)如果主机A想发送数据给主机B,主机A首先会检查自己的ARP缓存表,查看是否有主机B的IP地址和MAC地址的对应关系,如果有,则会将主机B的MAC地址作为源MAC地址封装到数据帧中。如果没有,主机A则会发送一个ARP请求信息,请求的目标IP地址是主机B的IP地址,目标MAC地址是MAC地址的广播帧(即FF-FF-FF-FF-FF-FF),源IP地址和MAC地址是主机A的IP地址和MAC地址。

2)当交换机接受到此数据帧之后,发现此数据帧是广播帧,因此,会将此数据帧从非接收的所有接口发送出去。

3)当主机B接受到此数据帧后,会校对IP地址是否是自己的,并将主机A的IP地址和MAC地址的对应关系记录到自己的ARP缓存表中,同时会发送一个ARP应答,其中包括自己的MAC地址。

4)主机A在收到这个回应的数据帧之后,在自己的ARP缓存表中记录主机B的IP地址和MAC地址的对应关系。而此时交换机已经知道了主机A和主机B的MAC地址了。
 
每个主机都维护一个ARP缓存表,可以使用 arp -a 命令查看。缓存表中的表项有过期时间(20分钟),如果20分钟内没有再吃使用某个表项,则该表项失效,下次还要发ARP请求获取目的主机的硬件地址。

ARP数据报的格式
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值