文章目录
网络层其他协议
网络层不仅有IP协议,还有其他如ARO、ICMP、IGMP、RARP等其他协议。
一、ARP地址解析协议
1.1 功能
当主机通过数据链路发送数据的时候,IP数据报会先被封装为一个数据帧,而MAC地址会被添加到数据帧的报头,ARP便是在这个过程中通过目标主机的IP地址,查询目标主机的MAC地址。
1.2 原理
在你的电脑和路由器中都有一个ARP缓存表,其中保存的是近期(20分钟)与自己有过通信的主机的IP地址与MAC地址的对应关系。
ARP缓存表使用过程:
- 当主机要发送一个IP数据报的时候,会首先查询一下自己的ARP缓存表;
- 如果在ARP缓存表中找到对应的MAC地址,则将IP数据报封装为数据帧,把MAC地址放在帧首部,发送数据帧;
- 如果查询的IP-MAC值对不存在,那么主机就向网络中广播发送一个ARP请求数据帧,ARP请求中包含待查询IP地址;
- 网络内所有收到ARP请求的主机查询主机的IP地址,如果发现自己符合条件,就回复一个ARP应答数据帧,其中包含自己的MAC地址;
- 收到ARP应答后,主机将其IP-MAC对应信息存入自己的ARP缓存,然后再据此封装IP数据报,再发送数据帧。