Skip to main content

FAQ

ARP Cache 不會更新 (Send out Gratuitous ARP)

問題說明:兩部相同規格的 Linux 主機,平時互作備援,網路設定各有一個固定 IP 與共用一個 VIP,VIP 使用 Alias IP 方式。每次移動 VIP 至另一部主機時,都會遇到其他鄰近的不同 vLAN 的主機無法 ping 這 VIP,原因是它們的 Switch 設備與 Core Switch 不會立即更新 ARP Cache,直到 在那些 Switch 上手動清除舊的 ARP 紀錄。

解決方案:要讓 Core Switch 立即更新 ARP Cache,可以再切換 VIP 後,從目的端 Linux 主機上執行任一個指令

arping -U -c 10 -I eth0:1 your.vip.address
arping -A -c 10 -I eth0:1 your.vip.address

其他解決方案:

啟動 VIP 時,使用 ifup 指令可以使主機傳送 Gratuitous ARP Request 更新訊號給 Switch

ifconfig eth0:1 10.4.1.110/24
ifup eth0:1

或者以下動作也可能可以傳送 Gratuitous ARP Request。

  • 重啟網路服務
  • 重啟主機
移除 sit0 網路介面

停用 IPv6 功能後,sit0 就不再出現。