Ping和ARP流程解析
Ping在計算機(jī)網(wǎng)絡(luò)里氮墨,屬于非常基礎(chǔ)栗弟、常用的功能污筷。每逢疑似網(wǎng)絡(luò)問題時,經(jīng)常的反應(yīng)就是:ping對方看看乍赫。
ARP協(xié)議用來根據(jù)IP地址獲取MAC地址瓣蛀。在鏈路層傳輸報文時陆蟆,依據(jù)的就是MAC地址。如果沒有對方的MAC地址揪惦,那么一個報文是無法從一端傳到另一端的遍搞。
這兩個非常常見的功能,里面的細(xì)節(jié)真要摳起來其實也不少器腋。今天正好在整理里面的步驟溪猿,所以順便分享一下。如果內(nèi)容有什么不準(zhǔn)確的地方纫塌,歡迎指正诊县。
文中假設(shè)的網(wǎng)絡(luò)拓?fù)淙缦滤荆瑑蓚€計算機(jī)屬于不同的網(wǎng)段措左、通過交換機(jī)依痊、路由器進(jìn)行連接。PC1的默認(rèn)路由指向路由器的eth0怎披,PC2的默認(rèn)路由指向路由器的eth1胸嘁。
那么,在這個拓?fù)湎铝构洌瑥腜C1發(fā)送ping報文到PC2性宏,它們之間會經(jīng)過哪些步驟呢?
簡單的回答是状飞,PC1構(gòu)造一個ICMP報文毫胜,目標(biāo)是PC2,然后就這么發(fā)出去了诬辈。
復(fù)雜的回答則如下圖所示:
具體的文字酵使,我就不從流程圖里copy出來了。只能說焙糟,流程其實還是挺復(fù)雜的口渔,里面涉及到ARP表、交換機(jī)上的MAC地址表酬荞、路由表這計算機(jī)網(wǎng)絡(luò)的三大表格搓劫;以及在報文傳輸過程中,源MAC地址混巧、目的MAC地址一直在變化,而源IP勤揩、目的IP不變的過程咧党。
有興趣的同學(xué),可以仔細(xì)看看上面的流程圖陨亡,文字不再贅述傍衡。謝謝深员。