網絡尋址過程詳解

今天瞭解一下arp協議,即ARP(Address Resolution Protocol)。是根據IP地址獲取物理地址的一個TCP/IP協議。IP間的通信一來MAC地址,通信雙方在一個局域網內的狀況極少,一般須要多臺服務器或網絡設備之間的中轉才能到達。在中轉時會須要下一站中轉設備的MAC地址來搜索下一個中轉目標。這時就會用到arp協議。緩存

交換機它維護了一張 MAC 地址表,用來反映各端口和 MAC 地址的對應關係,以便作好數據轉發工做。下面咱們來看一下路由器的工做原理,在路由器中也要維護一張表格,叫作路由條目表,用來反映如何到達某個 IP 地址網段,同時在路由器中也有 ARP 高速緩存,反映了該路由器各直接網段的 IP 地址和 MAC 地址的對應關係服務器

1) 因爲 B 的 IP 地址並無和 A 在一個網段,因此當 A 向 B 發送數據時, A 並不會直接把數據給 B ,而是交給本身的網關,也就是 192.168.0.254 ,因此 A 首先會 ARP 廣播請求 192.168.0.254 的 MAC 地址
2) A 獲得網關的 MAC 地址後,以它爲數據幀的目標 MAC 地址進行封裝數據,併發送出去
3) routerA 收到該幀後,檢查該幀的目標 IP ,併到本身的路由表查找如何到達該網段(目的IP與各網絡的掩碼相與:直接較付->特定主機路由->間接交付->默認路由),找到下一跳地址是 routerB 的 s0 端口,因而將數據從新封裝,將源地址改成 s0 端口 MAC 地址,目標 MAC 地址改成 routerB 的 s0 端口 MAC 址址,併發送給 routerB
4) 中間路由器傳遞過程同理
5) 最後一個路由(此例爲 routerC )收到該幀,發現目標 IP 就在本身的直連網段,因而查看 ARP 緩存,若是找到該 IP 的 MAC 地址,則以該 MAC 地址封裝數據發送出去,若是在 ARP 緩存沒找到,則發出 ARP 廣播,請求該 IP 的 MAC 地址,獲得對應的 MAC 地址後,再發送給主機 B網絡

在以上數據傳遞過程當中,咱們發現,數據幀的源 IP 和目標 IP 始終是不變的,而通過每一個路由進行從新封裝數據時 MAC 地址則在不斷的變化,老是以本身的地址做爲源 MAC 地址,下一跳的地址做爲目標 MAC 地址。
併發

相關文章
相關標籤/搜索