ARP快取表


from https://zh.wikipedia.org/wiki/%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%E5%8D%8F%E8%AE%AE



原理[編輯]

在Windows命令行檢視ARP快取表
在每台安裝有TCP/IP協定的電腦或路由器裡都有一個ARP快取表,表里的IP位址與MAC位址是一對應的,如下表所示。
主機名稱IP位址MAC位址
A192.168.38.1000-AA-00-62-D2-02
B192.168.38.1100-BB-00-62-C2-02
C192.168.38.1200-CC-00-62-C2-02
D192.168.38.1300-DD-00-62-C2-02
E192.168.38.1400-EE-00-62-C2-02
.........
以主機A(192.168.38.10)向主機B(192.168.38.11)傳送資料為例。
1.當傳送資料時,主機A會在自己的ARP快取表中尋找是否有目標IP位址。如果找到就知道目標MAC位址為(00-BB-00-62-C2-02),直接把目標MAC位址寫入影格裡面傳送就可。
2.如果在ARP快取表中沒有找到相對應的IP位址,主機A就會在網路上傳送一個廣播(ARP request),目標MAC位址是「FF.FF.FF.FF.FF.FF」,這表示向同一網段內的所有主機發出這樣的詢問:「192.168.38.11的MAC位址是什麼?」
3.網路上其他主機並不回應ARP詢問,只有主機B接收到這個影格時,才向主機A做出這樣的回應(ARP response):「192.168.38.11的MAC位址是00-BB-00-62-C2-02」,此回應以單播方式。這樣,主機A就知道主機B的MAC位址,它就可以向主機B傳送資訊。同時它還更新自己的ARP高速緩衝記憶體(ARP cache),下次再向主機B傳送資訊時,直接從ARP快取表里尋找就可。

ARP快取表採用老化機制,在一段時間內如果表中的某一行沒有使用,就會被刪除,這樣可減少快取表的長度,加快查詢速度。
免費ARP(gratuitous ARP),他是指主機傳送ARP查詢(廣播)自己的IP位址,當ARP功能被開啟或者是埠初始組態完成,主機向網路傳送免費ARP來查詢自己的IP位址確認位址唯一可用。
作用:
  1. 確定網路中是否有其他主機使用了IP位址,如果有應答則產生錯誤訊息。
  2. 免費ARP可以做更新ARP快取用,網路中的其他主機收到該廣播則在快取中更新條目,收到該廣播的主機無論是否存在與IP位址相關的條目都會強制更新,如果存在舊條目則會將MAC更新為廣播包中的MAC。
Windows:開始 → 執行 → cmd → arp -a(參數a表示顯示所有內容)
Linux終端 → arp -nv

MacOS終端 → arp -nla


ARPAddress Resolution Protocol)とは、TCP/IPネットワークにおいてIPアドレスからイーサネット上のMACアドレスを求めるためのプロトコルです。



C:\Users\xhtsai>arp -a

介面: 192.168.162.74 --- 0xb
  網際網路網址          實體位址               類型
  192.168.162.11        00-22-19-0e-9b-34     動態
  192.168.162.19        00-90-27-4e-dc-8a     動態
  192.168.162.21        24-31-84-58-0f-20     動態
  192.168.162.42        88-d7-f6-55-15-e6     動態
  192.168.162.43        04-92-26-e0-70-7c     動態
  192.168.162.44        88-d7-f6-56-fe-77     動態
  192.168.162.47        b0-6e-bf-cc-2c-aa     動態
  192.168.162.48        88-d7-f6-56-ff-1e     動態
  192.168.162.49        b0-6e-bf-cc-2c-bf     動態







留言

熱門文章