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,則說明地址重複)

相關文章
相關標籤/搜索