ARP协议工作详细过程介绍

简介: ARP协议

ARP协议

概念:
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址(MAC)的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
工作原理
ARP协议的请求包是以广播的方式发送的。网段中的所有主机都会接受到这个包,如果一个主机的IP地址和ARP请求中的目的IP地址相同,该主机会对这个请求数据包做出与ARP应答,将其MAC地址发送给源端。
在这里插入图片描述
命令对主机的ARP缓存表操作

命令 操作
arp -a 查看ARP缓存表中的内容
arp -d 删除ARP表中的一行内容
arp -s 手动在ARP表中指定IP地址与MAC地址的对应项
ARP的封装

ARP报文在以太网帧里: | 在这里插入图片描述

具体的ARP分组格式
在这里插入图片描述
使用ARP应当注意的问题

1. ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。
2. 如果所要找的主机和源主机不在同一个局域网上,那么就要通过ARP找到一个位于本局域网上的网关路由器的硬件地址,然后把分组发送给这个网关路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。

我的例子前提

我是通过设备之间发送ICMP报文,来体现ARP的工作过程,ICMP最简单来说,我们平时发送的ping包就是一种ICMP报文,ICMP就是一个IP数据包而已,所以封装ICMP的时候,不仅需要对方的IP还需要对方的MAC你才能把数据包封装起来发送出去,而你的本地只有自己的MAC,没有对方的,所以你就要发送ARP请求来得到想通信的对方的MAC,从而完成通信。

举例如下

在这里插入图片描述
注:H为主机,R为路由器

初始情况下的路由表的情况:
在这里插入图片描述

情况一

在这里插入图片描述
数据包与主机的ARP的详细情况:
在这里插入图片描述
解释:
为什么主机1发送ICMP请求包之前需要发送ARP请求,而主机2ICMP应答包却没有,是因为,主机1发送来ARP请求的时候,主机2也就偷偷的把主机1的MAC地址记录在了自己的ARP缓存表中了。

情况二

在这里插入图片描述
对应表的情况:
在这里插入图片描述
注意:数据包3和数据包6是应该重点思考的包,尤其是MAC地址和IP地址的区别。

情况三

在这里插入图片描述
对应表:
在这里插入图片描述

情况四

在这里插入图片描述
表:
在这里插入图片描述

情况五

在这里插入图片描述
表:
在这里插入图片描述

情况六

在这里插入图片描述
表:
在这里插入图片描述

目录
相关文章
|
2月前
|
缓存 网络协议 安全
【网络工程师】<软考中级>解析协议ARP&路由协议RIP/OSPF/BGP
【1月更文挑战第27天】【网络工程师】<软考中级>解析协议ARP&路由协议RIP/OSPF/BGP
|
2月前
|
存储 缓存 网络协议
dpdk课程学习之练习笔记二(arp, udp协议api测试)
dpdk课程学习之练习笔记二(arp, udp协议api测试)
107 0
|
2月前
|
缓存 网络协议 网络架构
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
47 1
|
10天前
|
人工智能 缓存 网络协议
网络层之三层交换、icmp协议、arp协议
网络层之三层交换、icmp协议、arp协议
|
26天前
|
存储 缓存 网络协议
|
2月前
|
网络协议 Linux Android开发
计算机网络:MAC地址 & IP地址 & ARP协议
计算机网络:MAC地址 & IP地址 & ARP协议
64 7
|
2月前
|
存储 缓存 网络协议
ARP协议:地址解析协议
ARP协议:地址解析协议
73 0
|
2月前
|
网络协议 Linux 网络架构
arp协议 与网关
arp协议 与网关
|
2月前
|
存储 缓存 运维
基于 Wireshark 分析 ARP 协议
基于 Wireshark 分析 ARP 协议
|
2月前
|
存储 缓存 网络协议
CCNA 200-301系列:地址解析协议(ARP)
【4月更文挑战第21天】
31 0