【计算机网络】网络层 地址解析协议ARP(Address Resolution Protocol)

作用

实现在网络层使用的IP地址解析变成在数据链路层使用的MAC地址

ARP表

每台主机都设有一个ARP高速缓存,用来存放本局域网上主机和路由器的IP地址到MAC地址的映射表,当网络上某个IP地址和硬件地址的映射发生改变时,ARP高速缓存中的项目就要改变
每个一段时间更新一次,设置时间太短会使ARP请求和响应分组通行量太频繁,设置的时间太长会使得更换网卡后的主机迟迟不能和网络上的主机进行通信

ARP的工作流程

当主机A要向局域网上的主机B发送IP数据报时,就在其ARP高速缓存中查找有无B的IP地址,若有,则查找出对应的硬件地址,再把这个硬件地址写入MAC帧,通过局域网把该MAC帧发往此物理地址

若找不到主机B的IP地址项目则按照以下步骤来查找
1、ARP进程在本地局域网上广播发送一个ARP请求分组(为了减少网络通信量,主机A在发送请求分组时,会将主机的IP地址到硬件地址的映射写入到请求分组中)
2、在局域网上运行的所有主机都可以接受到该ARP请求分组
3、若主机B的IP地址与ARP请求分组中要查询的IP地址一致,就收下这个分组,并向主机A发送ARP相应分组,同时在这个响应分组中写入主机的硬件地址(同时把在ARP请求分组中的主机A的地址映射写入主机的ARP高速缓存中)
4、主机A收到主机B的ARP相应分组后,就在其ARP高速缓存中写入主机B的IP地址到物理地址的映射

使用ARP的不同情况

发送方与目的主机在同一个网络上则直接使用ARP找到目的主机的硬件地址,在不同网络则交给本网络上的一个路由器,由该路由器使用ARP进行映射
ARP是解决同一个局域网上的主机或者路由器的IP地址和硬件地址的映射问题,如果要找的主机不在同一个局域网上,就不能解析另一个局域网上主机的硬件地址(实际上也不需要)
A要找B的硬件地址,A发送了ARP请求分组,如果A和B在同一个局域网上,那么由B来发送ARP相应分组,如果A和B不在同一个局域网上,那么由与A链接在同一个局域网上的路由器发送ARP响应分组,给出该路由器的硬件地址

无需发送ARP请求分组的三种情况

1、在源主机的ARP高速缓存中已经有了该目的IP地址的项
2、源主机发送的是广播分组
3、源主机和目的主机使用的是点对点链路(点对点链路不适用ARP协议,因为在设置这些链路时,网络设备已经获得了链路两端的IP地址,不需要ARP协议来实现IP地址和不同网络硬件地址的动态映射)

逆地址解析协议RARP

将硬件地址转化为IP地址

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值