Ip

當 ARP 請求來自不同的子網時會發生什麼?

  • January 12, 2016

在以下兩種情況下,從router1向router2發送ARP請求包會發生什麼?是否會生成 ARP 應答或丟棄 ARP 請求數據包?

  1. $$ router1 $$Intf1 (20.0.0.1/24) ======== (40.0.0.1/24)Intf2$$ router2 $$
  2. $$ router1 $$Intf1 (20.0.0.1/24) ======== (20.0.0.2/8) Intf2$$ router2 $$

上面的拓撲在路由器“router1”上的埠“Intf1”通過直接鏈路(例如,1 Gbps 電纜)連接到另一個路由器“router2”上的埠“Intf2”。

ARP 僅適用於同一 IP 子網中的設備之間。

當 IP 地址為 A 的設備 A 需要向 IP 地址為 B 的設備 B 發送數據包時,它首先會查詢其路由表以確定 IP 地址 B 是否屬於它可以通過其網路介面直接到達的子網(s ); 如果是,則設備 A 使用 ARP 將 IP 地址 B 映射到物理乙太網地址,然後將乙太網幀發送到該地址。

但是如果兩個 IP 地址在不同的子網上,設備將遵循完全不同的邏輯:它會在其路由表中查找到目標網路的路由,然後將其數據包發送到適當的路由器(或如果沒有更具體的路由,則預設網關);在這種情況下,將使用 ARP 來查找路由器的硬體地址,因為目標 IP 地址已經被認為無法直接到達,因此必須將數據包傳遞給可以處理它的路由器。

引用自:https://serverfault.com/questions/397350