计算机网络——地址解析协议ARP

ARP协议在局域网中起到关键作用,它解决了网络层IP地址到链路层MAC地址的映射问题。当发送数据时,设备会检查ARP表,若目的IP地址不存在映射,会广播ARP请求,接收方接收到请求后,若IP地址匹配,将回应其MAC地址。通过这种方式,设备能获取到正确的目标MAC地址进行数据帧的转发。在跨子网通信时,路由器会参与IP到MAC地址的转换过程。
摘要由CSDN通过智能技术生成

在链路层中,是使用的MAC地址作为转发的依据,也就是说根据MAC地址转发帧,但是上层网络层传递的是ip地址,现在出现一个问题,如何将网络层的ip地址转化为链路层的MAC地址——ARP协议。

发送数据到子网内

在每台计算机或路由器中有一个ARP表,也就是ip地址和MAC地址的一个映射表(当然还有其他的字段比如ttl)。

当网络层ip数据报传递到链路层时,会将目的ip地址按照ARP表,做映射,根据表映射到MAC地址,得到目的的MAC地址,进行转发。

如果表中没有找到目的ip地址,没有映射到,该怎么办?

如果在ARP表中没有找到该条映射数据,则会发出特殊的ARP请求分组,目的MAC地址是子网上其他的主机和路由器。也就是进行广播请求分组。

由于是广播的请求分组,所以子网上的其他主机和路由器都能够接收到该分组,进行解析,并判断,目的ip地址是否和自己的ip地址相同,如果相同,会发送一个响应分组,但是这个响应分组的目的地址不是广播地址,该响应分组的目的地址是请求分组的源MAC地址。

接收到响应分组之后,使用接收到的目的MAC,进行转发分组。

发送数据到子网外

如果发送到子网外,那MAC地址会怎样填写?直接填写目的的MAC地址?如果直接填写目的MAC地址,那怎样获取目的MAC地址?

如果发送数据到子网外,经过路由器,就会先将分组转发到路由器,路由器看到该链路层帧是向它寻址的,因此把这个帧传递给网络层,并根据目的ip地址决定转发到哪个接口。到达指定接口后,根据ARP表做映射,得到目的MAC地址,进行封装帧,再发送。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值