ARP協議具體解釋之Gratuitous ARP(免費ARP)


ARP協議具體解釋之Gratuitous ARP(免費ARP)

Gratuitous ARP(免費ARP

Gratuitous ARP也稱為免費ARP。無故ARPGratuitous ARP不同於一般的ARP請求,它並不是期待得到IP相應的MAC地址,而是當主機啟動的時候,將發送一個Gratuitous arp請求,即請求自己的IP地址的MAC地址。

免費ARP的產生

免費ARP數據包是主機發送ARP查找自己的IP地址。

通常。它發生在系統引導期間進行接口配置的時候。這里能夠使用Wireshark捕獲主機啟動時候的數據,以驗證是否發送Gratutious arp數據包。

這里捕獲到的數據包,如圖1.21所看到的。


1.21  Gratuitous ARP

從該界面能夠看到第444547數據包都是Gratuitous ARP包。

免費ARP的作用

免費ARP有兩個方面的作用。分別例如以下所看到的:

1.驗證IP是否沖突

一個主機能夠通過它來確定還有一個主機是否設置了同樣的IP地址。發送主機並不須要一定收到此請求的回答。假設收到一個回答,表示網絡中存在與自身IP同樣的主機。假設沒有收到應答,則表示本機所使用的IP與網絡中其他主機並不沖突。

【實例1-176】通過使用Wireshark捕獲數據包,分析是否有IP沖突的情況。

實驗環境如圖1.22所看到的。


1.22  驗證IP是否沖突

1在主機A上配置一個IP地址為192.168.7.8。然后又一次啟動主機A

2在主機A啟動時。這里也將主機BIP地址改動為192.168.7.8

3此時看Wireshark獲取到的數據包,如圖1.23所看到的。


1.23  免費ARP

從該界面主要分析9192幀。例如以下所看到的:

191幀中能夠看到MAC地址為00:23:8b:c4:05:bf的主機(主機A),向這個局域網發送免費ARP廣播包。告訴局域網中全部的主機,它請求使用192.168.7.8

292幀表示MAC地址為00:19:21:3f:c3:e5的主機(主機B),向整個局域網發送ARP廣播包。告訴局域網中全部的主機。192.168.7.8MAC地址是00:19:21:3f:c3:e5(主機B)。意思是主機B已經使用了192.168.7.8

從這兩個數據包,能夠看出主機B響應了主機A發送的免費ARP包,表示網絡中存在與A有同樣IP的主機。所以A主機啟動后。將會看到如圖1.24所看到的的窗體。


1.24  IP沖突提示

從該窗體的提示信息中能夠看到本機的IP地址與網絡上其它系統的IP地址沖突。

2.更換物理網卡

假設發送ARP的主機正好改變了物理地址(如更換物理網卡),能夠使用此方法通知網絡中其他主機及時更新ARP緩存。

【實例1-18】以下驗證更換物理網卡后,發送免費ARP的請求包。詳細操作過程例如以下所看到的:

本例中使用的實驗環境,如圖1.25所看到的。

在該環境中。主機A和主機BIPMAC地址已經標出。在實驗之前這兩台主機已經能正常通行,也就是說它們分別有對方的ARP條目。當中,主機A的操作系統為Kali Linux;主機BWindows 7


1.25  驗證免費ARP

1)查看主機AARP緩存表。運行命令例如以下所看到的:

  • root@kali:~# arp

  • Address                 HWtype  HWaddress           Flags Mask            Iface

  • 192.168.1.2              ether   00:23:8b:c4:05:bf             C                  eth0

從輸出的信息中,能夠看到該緩存表中有一條ARP條目。當中IP地址為192.168.1.2MAC地址為00:23:8b:c4:05:bf

2改動主機BMAC地址。

例如以下所看到的:

在桌面上右鍵單擊“網絡”|“屬性”,打開網絡和共享中心。在該界面單擊“更改適配器設置”命令。將顯示如圖1.26所看到的。

 


1.26  網絡連接  1.27  本地連接 屬性 

在該界面右鍵單擊“本地連接”|“屬性”。將顯示如圖1.27所看到的的界面。 

在該界面單擊“配置”button,將顯示如圖1.28所看到的的界面。在該界面選擇“高級”選項卡。如圖1.29所看到的。

 


1.28  Realtek PCLe GBE Family Controller屬性   1.29  高級設置 

在該界面的屬性一覽中找到“網絡地址”(有的系統是Locally Administered AddressNetwork Address),然后單擊“值”,並輸入要更改的MAC地址(這里輸入的MAC地址間不須要使用“-”符號)。

3查看Wireshark捕獲的數據包,如圖1.30所看到的。


1.30  免費ARP廣播包

從該界面能夠看到有三個免費ARP包,各自是111518

這三個包都是MAC地址為00:19:21:3f:c3:e4的主機向局域網中其他主機發送的免費ARP包,告訴其他主機它將使用192.168.1.2IP地址。免費ARP包中的數據,如圖1.31所看到的。

1.31  免費ARP廣播包

從該界面能夠看到第三行信息為ARP協議(請求/免費ARP)信息。從中能夠查看的發生方的MAC地址、IP地址及目標MAC地址、IP地址。這里的目標MAC地址是00:00:00:00:00:00,表示這是一個ARP廣播請求。局域網中其他的計算機都會收到。假設有某主機中記錄了相關該地址的ARP條目將會被更新。

4查看主機中的ARP緩存表。

例如以下所看到的:

  • root@kali:~# arp

  • Address                  HWtype  HWaddress           Flags Mask            Iface

  • 192.168.1.2                ether   00:19:21:3f:c3:e4              C                eth0

從輸出的信息中能夠看到,地址為192.168.1.2ARP條目的MAC地址更新為00:19:21:3f:c3:e4

本文選自:ARP協議全面實戰手冊——協議具體解釋、攻擊與防御大學霸內部資料,轉載請注明出處。尊重技術尊重IT人!



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM