ARP Table and MAC Address Table

1 minute read

簡述 Address Resolution Protocal(ARP) table 與 MAC address table 的差別。

Address Resolution Protocal(ARP):

基本上他是一個 IP 與 MAC address的對應表格,通常存在終端。 例如,你要發送封包給同一個網段的192.168.1.10 (這裡先不討論外網),但你不知道它的MAC address,所以你會發送一個destination MAC 是FF:FF:FF:FF:FF:FF的broadcast封包查詢對方的MAC位址,稱作 arp request,在它廣播之後,目標就會回傳他的MAC address,稱ARP reply。至於其他發覺與自己ip不同的終端,會直接丟棄該封包。

在你收到arp reply之後,你本地的ARP table就會新增一筆資料,就是192.168.1.10,對應他的MAC address。

當你需要把 IP address 轉成對應的 MAC address 的時候,ARP table 就是你主要查詢的點。

MAC address table:

這又叫做Content Addressable Memory (CAM),他是一筆 MAC address對到實體port的表格,通常在switch上。重複剛剛的例子,在你送出request之後,因為swtich並不知道那一個port才是目標,只好對所有port進行broadcast(除了來源port),等目標回傳時,swtich會紀錄下來這一筆資料,即 MAC address 對應 port No. ,這樣下一次有封包的 destination mac address 是它時,它就不用廣播,可直接從該port送達。

一個是MAC對實體port,一個是對到 IP address,不要搞混了。

Reference : Pearson IT Certification