學習筆記之初識arp

arp是什麼?

arp全稱Address Resolution Protocol,翻譯為地址解析協議。它的作用就是根據IP地址獲取物理地址(MAC地址)。

為什麼要arp?

既然arp的作用是根據IP獲取MAC地址,那麼問題就可以理解成為什麼要MAC地址了。因為數據在二層封裝時需要知道源MAC地址和目標MAC地址,否則沒辦法傳輸。

我覺得也可以從交換機的工作原理角度來理解,交換機中有一張MAC地址表,MAC地址表記錄了局域網中主機MAC地址與交換機接口的對應關係。交換機是根據MAC地址錶轉發數據幀的。

學習筆記之初識arp

說白了就是交換機要知道目標機的MAC地址才知道要從哪個接口把數據傳出去,說了這麼多就是想說交換機是基於MAC地址工作的。

arp的過程

學習筆記之初識arp

以pc1和pc2通信為例:

1.每臺主機中都有一張ARP的表(又是一張表....一張緩存表),ARP表記錄了其他主機的IP地址和MAC地址的對應關係。首先pc1會查看自己的ARP表有沒有PC2的IP地址和MAC地址的記錄,如果有直接拿來用就是了。

2.ARP表中沒找到目標MAC,這時PC1發送ARP請求,請求的目標IP地址是PC2的IP地址,但是目標MAC地址是廣播地址,因為它並不知道PC2的MAC地址,所以它只能對所有人問“我要xxx.xxx.xxx.xxx的MAC地址,收到請回答”。

3.PC2收到PC1的廣播後發現PC1要找的就是自己,先把PC1的IP地址和MAC地址的對應關係存到自己的ARP表,然後發送一個ARP的應答(應答中包含了自己的MAC地址),PC1收到應答後也會把PC2的IP對應MAC存起來。當然這個過程中交換機也趁機把PC1和PC2的MAC地址寫到了自己的MAC地址表中了。

4.PC3也會收到PC1發的ARP請求,但是發現PC1要找的不是它,則不會回覆它。


分享到:


相關文章: