深入剖析ARP的工作原理

时间:2022-09-13 12:25:01

深入剖析ARP的工作原理

摘要:当前的网络通信是以TCP/IP模型为基础的,通信离不开的就是封装,而封装就是按照模型的体系结构来进行封装,TCP/IP它是一个协议族,里面包含了很多协议,其中一个协议就是ARP。

关键词:TCP/IP LAN ICMP ARP

ARP全称就是address resolution protocol,中文意思就是地址解析协议,它工作在TCP/IP模型中的二层即所谓的数据链路层,作用就在于将三层的IP地址转换成二层的MAC地址,在局域网的通信中,它是必不可少的,如果没有它,局域网内部的通信就无法实现。下面就以一个实例来阐述ARP是如何工作的!

在以太网的局域网的内部有两台主机PCA和PCB,直接通过交叉线相连,交叉线经测试,没有问题,接着在两台PC上配置上IP地址,并且两IP地址在同一个网段,比如都是192.168.10.0/24网段,PCA就是192.168.10.1,PCB就是192.168.10.2,此时就需要在两台PC上做通信测试,当然我们在做通信测试的时候常用的工具就是ping,ping只是一个测试工具,它要工作的话肯定也是需要根据TCP/IP模型的体系结构来进行封装,它是封装在TCP/IP模型中的网络层中的ICMP协议内部,现在PCA要访问PCB,直接在PCA的电脑上点击“开始----运行---CMD”,在弹出的DOS对话框中输入 ping 192.168.10.2 ,如果弹出以下提示,就表示两台PC通信成功

Request time out

Reply from 192.168.10.2: bytes=32 time=17ms TTL=54

Reply from 192.168.10.2: bytes=32 time=18ms TTL=54

Reply from 192.168.10.2: bytes=32 time=18ms TTL=54

从这里可以看出,一共发出去了四个包,第一个包是超时,就是说没有成功,后续的三个包就表示通信已成功,当然这个非常简单,关键我们就来看包的封装,具体的通信过程是如何执行的

首先PCA要发PING包给PCB,PCA需要在本端进行封装,PING封装在ICMP里面,封装之后,接着封装protocol字段,此字段的意义就在于告诉IP层上层用的是什么协议,就是这里的ICMP,然后再封装目标IP即所谓的192.168.10.2,再封装源IP即所谓的192.168.10.1,接着就是二层数据链路层的封装,先封装TYPE字段(TYPE字段的意义和protocol字段的意义一样,告诉二层它层面之上的三层用的是什么协议,当然这里的三层协议就是IP协议,然后再继续封装 源MAC地址,就是PCA本身的MAC地址(假设就是MA),接着就是目标MAC地址,封装过程见下

此时,在封装目标MAC的时候就不知道该封装什么内容了,那如果不执行封装,这个包肯定也就过不去,接下来就会触发今天我们的重点要讨论的协议,就是ARP,一旦ARP被触发,就会产生ARP请求报文,ARP就直接在二层进行封装,先封装type字段,接着封装源MAC即所谓的MA,接着目标MAC地址区域就是 全F,也就是所谓的二层整网广播,而ARP内部也是一样,有源IP,源MAC,目标IP,目标MAC由于未知,所以就置为全0,它所表达的意思就是,请问192.168.10.2的MAC地址是多少?接下来就到了物理层转换为比特流通过网线传递给了PCB,当PCB收到之后,就开始进行解封装!首先检查目标MAC,由于是全F,广播,大家都能接收,然后看源MAC,接下来就是查看ARP内容,由于我的IP就是192.168.10.2,此ARP的内容正是针对我的询问,那我就要对此做答复,把我的MAC地址回应给PCA,接着在PCB端又要针对于ARP的请求报文回应一个应答报文,在发出去之前同样需要进行封装,封装的这个就是 ARP的应答报文!首先完善ARP内部的字段内容,源IP就是192.168.10.2,源MAC就是MB(假设PCB的MAC地址就是MB),目标IP就是192.168.10.1,目标MAC就是MA(因为之前PCA发了一个包过来,当我PCB收到之后,我都会把一些相关的重要信息给存储起来,比如对端的MAC和对端的IP),封装完之后就进入物理层转换为比特流,通过网线传递给了PCA,此时作为PCA就知道PCB的MAC地址了,所以后续的PING包都能成功,而第一个PING只所以丢失,是ARP报文导致的!因为任何的通信只有知道对端的MAC地址,才能够真正和对端进行通信,且这个MAC地址是全球唯一的!

综上所述,虽说ARP协议是TCP/IP协议簇中的小型协议,但它也是一个非常重要的协议,没有它,局域网之间的通信也就无法完成!

上一篇:浅谈通信光缆的防雷措施 下一篇:浅谈钢结构在火电厂设计中的应用