ARP協議詳解之ARP動態與靜態條目的生命週期

ARP協議詳解之ARP動態與靜態條目的生命週期

ARP動態條目的生命週期

動態條目隨時間推移自動添加和刪除。緩存

  • q  每一個動態ARP緩存條目默認的生命週期是兩分鐘。當超過兩分鐘,該條目會被刪掉。因此,生命週期也被稱爲超時值。工具

  • q  延長規則:當ARP條目已存在,使用該條目後,將會重設超時值爲兩分鐘。spa

【實例1-12】下面將驗證動態條目的生命週期是兩分鐘。具體操做步驟以下所示:操作系統

1查看本機的ARP緩存表。執行命令以下所示:.net

  • C:\Documents and Settings\Administrator>arp -aorm

  • No ARP Entries Found接口

輸出的信息表示本節中沒有任何ARP緩存條目。生命週期

2在本機上執行ping命令,經過ARP請求廣播獲取動態ARP條目。以下所示:ip

  • C:\Documents and Settings\Administrator>ping 192.168.7.6get

  • Pinging 192.168.7.6 with 32 bytes of data:

  • Reply from 192.168.7.6: bytes=32 time<1ms TTL=64

  • Reply from 192.168.7.6: bytes=32 time<1ms TTL=64

  • Reply from 192.168.7.6: bytes=32 time<1ms TTL=64

  • Reply from 192.168.7.6: bytes=32 time<1ms TTL=64

  • Ping statistics for 192.168.7.6:

  •     Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

  • Approximate round trip times in milli-seconds:

  •     Minimum = 0ms, Maximum = 0ms, Average = 0ms

執行以上命令後,將會產生接口地址爲192.168.7.6的動態ARP緩存條目。

3查看ARP緩存表。執行命令以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • Interface: 192.168.7.8 --- 0x2

  •   Internet Address      Physical Address      Type

  •   192.168.7.6          50-e5-49-eb-46-8d     dynamic

從輸出的信息中能夠看到,本機中存在一條ARP緩存條目。

4過兩分鐘後,再次查看ARP緩存表。發現該條目已被刪除。顯示結果以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • No ARP Entries Found

從輸出信息中,能夠肯定前面的動態ARP條目已被刪除。

【實例1-13】下面將驗證重複使用動態條目,條目會一直生效。具體操做步驟以下所示:

1查看本機的ARP緩存表。執行命令以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • No ARP Entries Found

輸出的信息表示本節中沒有任何ARP緩存條目。

2在本機上執行ping命令,經過-t選項實現一直使用獲取到的動態條目。以下所示:

  • C:\Documents and Settings\Administrator>ping 192.168.6.100 -t

  • Pinging 192.168.6.100 with 32 bytes of data:

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • Reply from 192.168.6.100: bytes=32 time<1ms TTL=64

  • ......

執行以上命令後,將會產生接口地址爲192.168.6.100的動態ARP緩存條目。

3查看ARP緩存表。以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • Interface: 192.168.7.8 --- 0x2

  •   Internet Address         Physical Address      Type

  •   192.168.6.100          50-e5-49-eb-46-8d     dynamic

從輸出的信息中,能夠看到本機中有一條動態ARP條目。該主機的ARP條目緩存時間,能夠經過抓包工具獲取到。下面使用Wireshark過濾只顯示ARP協議的數據包,如圖1.20所示。

1.20  動態條目重複使用

從該界面能夠看到,捕獲到的全部數據包中只有第9個數據幀是ARP廣播請求包。這是由於在第一次通訊時,不知道對方(192.168.6.100)的MAC地址。在後面捕獲到的數據包中,沒有出現過這樣的廣播包。這說明在該過程當中,主機中的ARP條目沒有發送變化。

ARP靜態條目的生命週期

靜態條目一直保留在ARP緩存中,意思是永久生效。但不一樣的操做系統中,靜態條目的保存方式是不一樣的。例如,在Windows XP系統中,從新啓動計算機後該條目失效。而在Windows 7中,即便從新啓動計算機後,該靜態條目仍然保存。下面經過幾個實例依次驗證各類操做系統對靜態條目的處理方式。

【實例1-14】下面驗證Windows XP的靜態條目不保存狀況。具體操做步驟以下所示:

1手動綁定接口爲192.168.7.8ARP條目。執行命令以下所示:

  • C:\Documents and Settings\Administrator>arp -s 192.168.7.7 00-19-21-3f-c3-e5

執行以上命令後,沒有任何輸出信息。

2查看ARP緩存表。執行命令以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • Interface: 192.168.7.8 --- 0x2

  •   Internet Address      Physical Address      Type

  •   192.168.7.7          00-19-21-3f-c3-e5     static

從輸出的信息中,能夠看到接口爲192.168.7.7ARP緩存條目爲static(靜態)。

3從新啓動計算機。啓動後,再次查看ARP緩存表。以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • No ARP Entries Found

輸出的信息表示沒有找到ARP條目。

【實例1-15】下面驗證Windows 7的靜態條目保存。具體操做步驟以下所示:

1手動綁定接口爲192.168.7.6ARP條目。執行命令以下所示:

  • C:\Documents and Settings\Administrator>arp -s 192.168.7.6 50-e5-49-eb-46-8d

執行以上命令後,沒有任何輸出信息。

2查看ARP緩存表。執行命令以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • Interface: 192.168.7.8 --- 0x2

  •   Internet Address      Physical Address      Type

  •   192.168.7.6           50-e5-49-eb-46-8d     靜態

從輸出的信息中,能夠看到接口爲192.168.7.6ARP緩存條目爲靜態。

3從新啓動計算機。啓動後,再次查看ARP緩存表。以下所示:

  • C:\Documents and Settings\Administrator>arp -a

  • Interface: 192.168.7.8 --- 0x2

  •   Internet Address      Physical Address      Type

  •   192.168.7.6           50-e5-49-eb-46-8d    靜態

從輸出的信息中能夠看到綁定的靜態條目仍然存在。

【實例1-16】下面驗證Linux的靜態緩存是否保存。具體操做步驟以下所示:

1查看本機的ARP緩存表。執行命令以下所示:

  • root@kali :~# arp -a

  • localhost (192.168.5.5) at 00:0c:29:56:bd:21 [ether] on eth0

輸出的信息,表示本機中有一條動態ARP緩存條目。

2192.168.5.5IP地址與MAC地址綁定。執行命令以下所示:

  • root@kali :~# arp -s 192.168.5.5 00:0c:29:56:bd

執行以上命令後,接口爲192.168.5.5ARP條目將爲靜態。

3查看ARP緩存表。執行命令以下所示:

  • root@kali :~# arp -a

  • localhost (192.168.5.5) at 00:0c:29:56:bd:00 [ether] PERM on eth0

從輸出的信息中能夠看到查看到的ARP條目中,出現了一個PERM關鍵字。該關鍵字表示這條ARP條目爲靜態。

4從新啓動計算機。啓動後,再次查看ARP緩存表。執行命令以下所示:

執行以上命令後,沒有任何信息輸出。這表示該靜態條目,從新啓動計算機後將被刪除。
本文選自:ARP協議全面實戰手冊——協議詳解、攻擊與防護大學霸內部資料,轉載請註明出處,尊重技術尊重IT人!

相關文章
相關標籤/搜索