上一章介绍了ICMP协议,网络排障工具:ping 和 tracert 技术详解。今天介绍下同属于网络层的ARP协议。
一台主机要发送数据给另一台主机时,必须要知道目的主机的网络层地址(即IP地址)。IP地址由网络层来提供,但是仅有IP地址是不够的。
IP数据报文必须封装成帧才能通过数据链路进行发送。数据帧必须要包含目的MAC地址,因此发送端还必须获取到目的MAC地址。那么如何获取对方的mac地址呢?
通过ARP(Address Resolution Protocol)协议可以根据IP地址获取对方的MAC地址。
正文
1 ARP协议工作原理:
![bae84b1bdcebec328f89753d0c8906bc.png](https://i-blog.csdnimg.cn/blog_migrate/0b871f585dafde57480808be70f97386.jpeg)
如上图所示:
主机A(ip为10.0.0.1)要和主机C(ip为10.0.0.3)通信,数据包经过主机A的封装后发给主机C,我们知道主机A封装数据时除了要知道对方的IP地址,还需要知道对方的MAC地址,这时候就需要借助ARP协议了。
下面我们看下ARP是如何获取主机C的MAC地址的?
1、ARP请求:
主机A首先会去检查ARP缓存表