ARP學習你真的理解了嗎?沒有學到ARP就真的業務不通嗎?

要想了解二層數據交互先了解什麼是MAC地址表,ARP表。

什麼是MAC地址表?

交換機是根據MAC地址錶轉發數據幀的。在交換機中有一張記錄著局域網主機MAC地址與交換機接口的對應關係的表,交換機就是根據這張表負責將數據幀傳輸到指定的主機上。MAC地址表存放於交換機的緩存中。動態MAC地址存在老化時間(隔一段時間收不到該MAC地址幀,則從表項中刪除該條目。思科\\華為\\華三\\銳捷默認均是300s也即5分鐘,可自定義老化時間)。

ARP學習你真的理解了嗎?沒有學到ARP就真的業務不通嗎?

老化時間以華三交換機為例

什麼是ARP地址表?

ARP:ARP協議是工作在網絡層(當然也有人說ARP是工作在鏈路層,但是我更傾向其工作在網絡層)的協議,它是一張目標IP地址和目標MAC的映射關係表,ARP負責將IP地址解析為MAC地址。其實就是一個對目標MAC進行尋址的過程。ARP緩存表也是存放在buffer中,也存在老化時間(H3C\\華為默認老化時間20min,思科默認240min,銳捷默認60min,均可自定義)

ARP的學習過程:通過發送ARP請求(arp探測包),對方收到後回個ARP應答,通信無誤後各自刷新自己的ARP緩存表。

ARP學習你真的理解了嗎?沒有學到ARP就真的業務不通嗎?

ARP表:業務IP對應的MAC地址、MAC學習到的源接口信息(從哪個接口學習到的mac))

值得注意:MAC地址表及ARP表大小是衡量交換機性能的關鍵技術指標。

別忘了我們主機也有arp表哦:

ARP學習你真的理解了嗎?沒有學到ARP就真的業務不通嗎?

相關故障講解

先上一張圖:如圖我們看到ARP表沒有學習其他的ARP信息

ARP學習你真的理解了嗎?沒有學到ARP就真的業務不通嗎?

只有本地網關+MAC對應關係,沒有其他ARP上來

提問:看不到業務的ARP就可以判斷業務不通嗎?

答案當然是否定的!

舉個事例說明:

現象:有一次割接操作中斷業務,割接完成後查看業務是否恢復(查arp表並進行ping測試),驚訝的發現所有業務arp均沒有上來!

排查過程:1、懷疑自己的配置有問題,查了好些時間,問過廠家配置是正確的。

2、懷疑是網關設備出bug了,但是其他捆綁口的業務都是正常的,這種bug有點奇怪。

3、回退割接,業務上線正常,能看到arp,ping通。

4、繼續割接步驟,因為之前遇到過沒有學習到arp,通過ping測首包觸發arp學習的前例(沒有首包去觸發進行arp請求,導致網關設備上學習不到arp)。So,我在網關設備上操作--帶網關源ping業務,居然能ping通,然後再返回去查看arp表,arp信息也學習到了。

上述案例說明:在arp緩存表裡沒有看到相應IP及MAC映射條目,不代表業務不正常,這時候ping有可能是通的,進行ping操作後arp就學習到了。(這種現象一般發生在思科設備上,比如我這次割接網關設備Cisco ASR9K)

對網絡工程技術或者Python編程感興趣的可以加個關注,我會持續發佈相關技術文章,和大家一起交流學習。


分享到:


相關文章: