ARP 地址解析協議

香吧香發表於2023-10-06

轉載請註明出處:

概念:

  ARP(Address Resolution Protocol)是一種網路協議,用於將網路層的IP地址對映到物理網路介面(MAC地址),以便在區域網(LAN)上進行通訊。其主要作用是解決從IP地址到MAC地址的對映關係,使得資料包能夠透過物理網段正確地傳遞。

當計算機傳送資料包到目標IP地址時,它需要知道目標IP對應的MAC地址才能正確地轉發資料。這時就會使用ARP協議來完成以下過程:

  1. ARP請求(ARP Request):傳送方主機向區域網上的廣播地址傳送一個ARP請求,該請求包含源主機的IP地址和MAC地址,並詢問具有目標IP地址的裝置的MAC地址。

  2. ARP應答(ARP Reply):擁有目標IP地址的裝置收到ARP請求後,會向傳送方主機傳送一個ARP應答,其中包含它的IP地址和MAC地址。

  3. ARP快取(ARP Cache):傳送方主機在收到ARP應答時,將對應IP地址和MAC地址的對映關係儲存在ARP快取中,在之後的通訊中可以直接使用該對映關係。

ARP協議的使用場景:

  1. 在區域網內部,當主機A要傳送資料給主機B時,會先透過ARP協議查詢目標主機B的MAC地址,並將資料包封裝在乙太網幀中傳送到目標MAC地址。

  2. 當一個路由器接收到一個來自外部網路的資料包,並需要將其轉發到目標主機時,也會利用ARP協議查詢目標主機的MAC地址。

ARP協議的常用配置:

  • ARP協議的配置通常涉及以下兩個方面:

  1. ARP快取表:每個主機或路由器都維護一個ARP快取表,其中儲存了IP地址和相應的MAC地址的對應關係。該表用於快速查詢目標MAC地址,在必要時可以手動新增或刪除條目。

  2. ARP請求與回應:當一個主機需要獲取另一個主機的MAC地址時,它會傳送一個ARP請求廣播訊息,詢問該IP地址對應的MAC地址。而目標主機則會回覆一個ARP響應訊息,包含自己的MAC地址。

ARP協議的使用過程:

  以下是一個示例說明ARP的使用過程:

假設有兩臺主機A和B,它們連線在同一個區域網上,具有以下資訊:

  • 主機A的IP地址:192.168.0.10,MAC地址:AA:BB:CC:DD:EE:FF

  • 主機B的IP地址:192.168.0.20,MAC地址:11:22:33:44:55:66

  1. 主機A想要向主機B傳送資料包。

  2. 主機A首先檢查ARP快取,看是否有目標IP地址(192.168.0.20)對應的MAC地址。

  3. 如果在ARP快取中找到了目標IP地址對應的MAC地址,則直接使用該對映關係傳送資料包。

  4. 如果ARP快取中沒有目標IP地址的對映關係,在主機A上傳送一個ARP請求,廣播給整個區域網。

  5. 主機B收到ARP請求後,檢查請求中的IP地址是否與自己的IP地址相匹配。

  6. 如果匹配,主機B會傳送一個ARP應答,將自己的IP地址和MAC地址作為應答傳送給主機A。

  7. 主機A收到ARP應答後,將目標IP地址(192.168.0.20)和相應的MAC地址(11:22:33:44:55:66)儲存在ARP快取中,並使用此對映關係傳送資料包到主機B。

  這樣,透過ARP協議的幫助,主機A成功地獲取了主機B的MAC地址,並可以進行正常的通訊。

  需要注意的是,ARP協議僅適用於同一物理網路的區域網內部,而不涉及跨越路由器的網路通訊。對於跨越子網的通訊,使用ARP的方法與上述過程略有不同,包括使用代理ARP或者透過閘道器進行通訊。

檢視路由器或主機上的ARP快取表:

  • 在Windows作業系統上,可以使用命令arp -a來檢視本地主機的ARP快取表。在路由器上,具體的檢視方法可能因廠商和作業系統而異。

  • 在Linux作業系統上,可以使用命令arp -n來檢視本地主機的ARP快取表。路由器上的具體檢視方法可能需要參考相關文件或執行特定的命令。

  • 在路由交換裝置上,可以透過dispaly arp all 命令檢視當前所有得arp快取表。

             

 

 
 

相關文章