ARP協議詳解之Gratuitous ARP(免費ARP)
ARP協議詳解之Gratuitous ARP(免費ARP)
Gratuitous ARP(免費ARP)
Gratuitous ARP也稱為免費ARP,無故ARP。Gratuitous ARP不同於一般的ARP請求,它並非期待得到IP對應的MAC地址,而是當主機啟動的時候,將傳送一個Gratuitous arp請求,即請求自己的IP地址的MAC地址。
免費ARP的產生
免費ARP資料包是主機傳送ARP查詢自己的IP地址。通常,它發生在系統引導期間進行介面配置的時候。這裡可以使用Wireshark捕獲主機啟動時候的資料,以驗證是否傳送Gratutious arp資料包。這裡捕獲到的資料包,如圖1.21所示。
圖1.21 Gratuitous ARP包
從該介面可以看到第44、45、47資料包都是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啟動時,這裡也將主機B的IP地址修改為192.168.7.8。
(3)此時看Wireshark獲取到的資料包,如圖1.23所示。
圖1.23 免費ARP包
從該介面主要分析91、92幀。如下所示:
(1)從91幀中可以看到MAC地址為00:23:8b:c4:05:bf的主機(主機A),向這個區域網傳送免費ARP廣播包。告訴區域網中所有的主機,它請求使用192.168.7.8。
(2)92幀表示MAC地址為00:19:21:3f:c3:e5的主機(主機B),向整個區域網傳送ARP廣播包。告訴區域網中所有的主機,192.168.7.8的MAC地址是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和主機B的IP、MAC地址已經標出。在實驗之前這兩臺主機已經能正常通行,也就是說它們分別有對方的ARP條目。其中,主機A的作業系統為Kali Linux;主機B為Windows 7。
圖1.25 驗證免費ARP
(1)檢視主機A的ARP快取表。執行命令如下所示:
-
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.2,MAC地址為00:23:8b:c4:05:bf。
(2)修改主機B的MAC地址。如下所示:
在桌面上右鍵單擊“網路”|“屬性”,開啟網路和共享中心。在該介面單擊“更改介面卡設定”命令,將顯示如圖1.26所示。
圖1.26 網路連線 圖1.27 本地連線 屬性
在該介面右鍵單擊“本地連線”|“屬性”,將顯示如圖1.27所示的介面。
在該介面單擊“配置”按鈕,將顯示如圖1.28所示的介面。在該介面選擇“高階”選項卡,如圖1.29所示。
圖1.28 Realtek PCLe GBE Family Controller屬性 圖1.29 高階設定
在該介面的屬性一覽中找到“網路地址”(有的系統是Locally Administered Address或Network Address),然後單擊“值”,並輸入要更改的MAC地址(這裡輸入的MAC地址間不需要使用“-”符號)。
(3)檢視Wireshark捕獲的資料包,如圖1.30所示。
圖1.30 免費ARP廣播包
從該介面可以看到有三個免費ARP包,分別是11、15、18。這三個包都是MAC地址為00:19:21:3f:c3:e4的主機向區域網中其它主機傳送的免費ARP包,告訴其它主機它將使用192.168.1.2的IP地址。免費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.2的ARP條目的MAC地址更新為00:19:21:3f:c3:e4。
本文選自:ARP協議全面實戰手冊——協議詳解、攻擊與防禦大學霸內部資料,轉載請註明出處,尊重技術尊重IT人!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-1721530/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 一文詳解 ARP 協議協議
- ARP協議介紹與ARP協議的攻擊手法協議
- ARP 地址解析協議協議
- icmp和arp協議協議
- Linux 核心引數 arp_ignore & arp_announce 詳解Linux
- 系列TCP/IP協議-ARP與RARPTCP協議
- ARP地址解析協議-個人總結協議
- 網路層協議及ARP攻擊協議
- ARP(地址解析協議)和RARP(逆地址解析協議)協議
- ARP協議 地址解析協議:IP地址轉換為MAC地址協議Mac
- ARP協議:網路世界的地址翻譯官協議
- arp命令 引數
- HCNP Routing&Switching之代理ARP
- Kali 實現區域網 ARP 欺騙和 ARP 攻擊
- Linux基礎命令---arpLinux
- Python寫ARP區域網主機存活掃描與ARP欺騙工具Python
- [專業術語]什麼是ARP攻擊?如何防範ARP攻擊?
- 今日談:通道複用、PPP幀、ARP協議的有關知識協議
- TESTBASE-ARP快速控制原型原型
- MPLS ARP的常用方法——VecloudCloud
- 詳述網路中ARP安全的綜合功能
- ARP原理概述——基於WinPcap傳送ARP請求資料包獲取遠端MAC地址PCAMac
- scapy構造列印ARP資料包
- 網路安全測試---ARP欺騙
- 《計算機網路微課堂》實驗2 MAC地址,IP地址,ARP協議計算機網路Mac協議
- Linux網路介面操作之ioctl-2_ARP條目Linux
- ARP欺騙與中間人攻擊
- arp欺騙實驗及預防方法
- win10系統怎麼開啟arp防火牆_win10開啟arp防火牆的步驟Win10防火牆
- ARP地址解析協議、DNS域名系統和交換機、路由器、閘道器的概念協議DNS路由器
- 【論文】網路安全與入門-ARP攻擊
- 什麼是ARP攻擊?主要分類有哪些?
- 大白話理解LVS DR模型中的arp_ignore模型
- TKE 容器網路中的 ARP Overflow 問題探究及其解決之道
- 【轉】交換機開發(四)—— ARP 基礎知識解析
- 網路安全中ARP攻擊最常見的七種方法!
- Arturia ARP 2600 V3 for Mac(音響模擬合成工具)Mac
- DNS欺騙和ARP欺騙是什麼?有何區別?DNS
- Linux獨享主機繫結IP和MAC地址,防止ARP欺騙LinuxMac