理解ARP及其工作机制

ARP(Address Resolution Protocol)是一种解决地址问题的协议,是根据IP地址获取物理地址的一个TCP/IP协议。地址解析协议是建立在网络中各个主机互相信任的基础上的,因此可能会接收到一些伪应答报文,造成“ARP欺骗”。就如人与人之间非常的信任,不管对方传达了什么信息都会接受,也许说得是假的。每台主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址的对应关系,以及添加或删除静态对应关系等。
由于OSI模型把网络工作分为七层,IP地址在OSI模型的第三层,MAC地址在第二层,彼此不直接打交道。已知以太网在发送IP数据包时,需要先封装第三层(32位IP地址)、第二层(48位MAC地址)的报头,但在发送时只知道目标IP地址,不知道MAC地址,因此就需要使用地址解析协议,才能通过发送帧将目标IP地址转换成目标MAC地址,来保证通信的顺利进行。

就如ARP解析MAC地址时
在上层应用产生数据,定位目标IP;
再依次通过应用层(负责用户信息的语义表示,并在两个通信者之间进行语义匹配)、传输层(根据通信子网的特性最佳地利用网络资源,并以可靠和经济的方式为源主机和目的主机的会话层之间建立一条传输通道,用以透明地传送报文。)、网络层(使发送站的传输层所传下来的分组能够正确无误地按照地址找到目的站点,并交付给目的站点的传输层)、数据链路层(负责在两个相邻结点建立、维护和诉除链路)进行封装。三层到二层的封装失败,由于二层是以太网,ARP的工作机制便会产生ARP Request去解析目的MAC,此时,源MAC为数据发起者的MAC,目的MAC地址为FFFF:FFFF:FFFF(代表所有MAC);
因此所有设备都可以拆掉二层的封装,然后解读ARP数据包中需要解析的目的IP;
目的IP不正确的设备直接忽略ARP请求包,正确的会产生ARP Reply去回应这个ARP Request;
数据的发起者接收到ARP Reply后,再将目的IP与目的MAC的对应关系添加到自己的ARP表中;
最后重新开始封装之前未完成的第二层封装。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值