APR协议

             ARP协议(地址解析协议)缓存

ARP协议的分类:普通ARP、反向ARPRARP)、免费ARP和代理ARP网络

网络设备有数据要发送给另外一台网络设备时,必需要知道对方的网络层地址(即IP地址)。IP地址由网络层来提供,可是仅有IP地址是不够的,IP数据报文必须封装成帧才能经过数据链路进行发送。数据帧必需要包含目的MAC地址,所以发送端还必须获取到目的MAC地址。经过目的IP地址而获取目的MAC地址的过程是由ARPAddress Resolution Protocol)协议来实现的。
ide

举个简单的例子,若是你有某我的的经度,可是没有某我的的纬度,你是没法找到他的,相反,你有了他的经纬度,你就必定都能找到他,经度表明IP,纬度表明MAC地址。spa

工做流程:代理

A主机要给B主机发送数据
路由

第一步:首先,A主机查看本身的ARP缓存当中有没有B的MAC地址,若是没有,则到第二步;工作流

第二步:A找不到B的MAC地址,因而,A想了个办法,A将ARP的请求广播发送到本地全部的网络,A的源IP地址和源MAC地址都包括在里面;it

第三步:在本地全部的主机当中,以前咱们知道,IP地址工做在3层,在其余主机在解封装到第三层的时候,判断这是否是属于本身的IP,若是不属于,就丢弃;若是属于,就将A的IP和MAC添加到本身的ARP缓存当中。io

第四步:主机B将包含本身的IP和MAC地址发送给Aclass

这个过程简单的来讲,就是广播请求,单播回应。


                                                       代理ARP

位于不一样网络的网络设备在不配置网关的状况下,可以经过ARP代理实现相互通讯。

工做流程:

第一步:A给B发送数据,这时候A发送一个ARP广播请求

第二步:路由器识别了A和B不在一个网段内,因而路由器广播了一个请求,主机B接受到路由器的请求后便返回了一个确认;

第三步:同时,路由器告诉A,之后想找B,直接找我就能够了,把你发送的数据包的MAC地址换成个人MAC就行了,我来转发你的数据;

一、主机和路由器发送和接收数据的原理:

主机发送数据:

a):目标主机和本身在同一个网络内,主机发送的数据包的二层MAC地址就是远端主机的MAC地址

b):目标主机和本身不在同一个网络内,主机发送的数据包的二层MAC地址就是本身默认网关的MAC地址

2.主机接收数据

先查看二层MAC地址,若是是本身的MAC,或是本身所在组的组播MAC,或是广播MAC,则继续向上解封装,不然丢弃;

而后查看三层IP地址,若是是本身的IP,或是本身所在组的组播IP,或是广播IP,则接收,不然丢弃。


3.路由器发送数据:

a):目标主机和本身在同一个网络内,路由器发送的数据包的二层MAC地址就是远端主机的MAC地址

b):目标主机和本身不在同一个网络内,主机发送的数据包的二层MAC地址就是下一跳路由器的MAC

PS:数据包在通过路由器转发的时候,其IP地址不变,MAC地址改变



RARP:反向地址解析协议

做用:已知MAC,解析IP


无端ARP(免费ARP):SIP和DIP是同一个地址

做用:用来检测IP地址的惟一性(若是有主机回应这个ARP,则说明地址重复)

相关文章
相关标签/搜索