ARP協(xié)議工作原理 ARP數(shù)據(jù)包根據(jù)接收對(duì)象不同,可分為兩種: 1. 廣播包(Broadcast)。廣播包目的MAC地址為FF-FF-FF-FF-FF-FF,交換機(jī)設(shè)備接收到廣播包后,會(huì)把它轉(zhuǎn)發(fā)給局域網(wǎng)內(nèi)的所有主機(jī)。 2. 非廣播包(Non-Broadcast)。非廣播包后只有指定的主機(jī)才能接收到。
ARP數(shù)據(jù)包根據(jù)功能不同,也可以分為兩種: 1. ARP請(qǐng)求包(ARP Request)。ARP請(qǐng)求包的作用是用于獲取局域網(wǎng)內(nèi)某IP對(duì)應(yīng)的MAC地址。 2. ARP回復(fù)包(ARP Reply)。ARP回復(fù)包的作用是告知?jiǎng)e的主機(jī),本機(jī)的IP地址和MAC是什么。
廣播的一般都是ARP請(qǐng)求包,非廣播的一般都是ARP回復(fù)包。
假設(shè)局域網(wǎng)內(nèi)有以下兩臺(tái)主機(jī),主機(jī)名、IP地址、MAC地址分別如下: 主機(jī)名 IP地址 MAC地址 A 192.168.0.1 AA-AA-AA-AA-AA-AA B 192.168.0.2 BB-BB-BB-BB-BB-BB
當(dāng)主機(jī)A需要與主機(jī)B進(jìn)行通訊時(shí),它會(huì)先查一下本機(jī)的ARP緩存中,有沒(méi)有主機(jī)B的MAC地址。如果有就可以直接通訊。如果沒(méi)有,主機(jī)A就需要通過(guò)ARP協(xié)議來(lái)獲取主機(jī)B的MAC地址,具體做法相當(dāng)于主機(jī)A向局域網(wǎng)內(nèi)所有主機(jī)喊一嗓子:“喂~誰(shuí)是192.168.0.2?我是192.168.0.1,我的MAC地址是AA-AA-AA-AA-AA-AA 。你的MAC地址是什么,快告訴我”,這時(shí)候主機(jī)A發(fā)的數(shù)據(jù)包類型為:廣播-請(qǐng)求。
當(dāng)主機(jī)B接收到來(lái)自主機(jī)A的“ARP廣播-請(qǐng)求”數(shù)據(jù)包后,它會(huì)先把主機(jī)A的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,然后它會(huì)給主機(jī)A發(fā)送一個(gè)“ARP非廣播-回復(fù)”數(shù)據(jù)包,其作用相當(dāng)于告訴主機(jī)A:“嘿,我是192.168.0.2,我的MAC地址是BB-BB-BB-BB-BB-BB”。當(dāng)主機(jī)A接收到主機(jī)B的回復(fù)后,它會(huì)把主機(jī)B的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,之后主機(jī)A和B就可以進(jìn)行通訊了。
從上述局域網(wǎng)主機(jī)通訊過(guò)程可以看出,主機(jī)在兩種情況下會(huì)保存、更新本機(jī)的ARP緩存表, 1. 接收到“ARP廣播-請(qǐng)求”包時(shí) 2. 接收到“ARP非廣播-回復(fù)”包時(shí)
這種機(jī)制,或者說(shuō)ARP協(xié)議的設(shè)計(jì),會(huì)不會(huì)存在問(wèn)題呢?
ARP協(xié)議工作原理 ARP數(shù)據(jù)包根據(jù)接收對(duì)象不同,可分為兩種: 1. 廣播包(Broadcast)。廣播包目的MAC地址為FF-FF-FF-FF-FF-FF,交換機(jī)設(shè)備接收到廣播包后,會(huì)把它轉(zhuǎn)發(fā)給局域網(wǎng)內(nèi)的所有主機(jī)。 2. 非廣播包(Non-Broadcast)。非廣播包后只有指定的主機(jī)才能接收到。
ARP數(shù)據(jù)包根據(jù)功能不同,也可以分為兩種: 1. ARP請(qǐng)求包(ARP Request)。ARP請(qǐng)求包的作用是用于獲取局域網(wǎng)內(nèi)某IP對(duì)應(yīng)的MAC地址。 2. ARP回復(fù)包(ARP Reply)。ARP回復(fù)包的作用是告知?jiǎng)e的主機(jī),本機(jī)的IP地址和MAC是什么。
廣播的一般都是ARP請(qǐng)求包,非廣播的一般都是ARP回復(fù)包。
假設(shè)局域網(wǎng)內(nèi)有以下兩臺(tái)主機(jī),主機(jī)名、IP地址、MAC地址分別如下: 主機(jī)名 IP地址 MAC地址 A 192.168.0.1 AA-AA-AA-AA-AA-AA B 192.168.0.2 BB-BB-BB-BB-BB-BB
當(dāng)主機(jī)A需要與主機(jī)B進(jìn)行通訊時(shí),它會(huì)先查一下本機(jī)的ARP緩存中,有沒(méi)有主機(jī)B的MAC地址。如果有就可以直接通訊。如果沒(méi)有,主機(jī)A就需要通過(guò)ARP協(xié)議來(lái)獲取主機(jī)B的MAC地址,具體做法相當(dāng)于主機(jī)A向局域網(wǎng)內(nèi)所有主機(jī)喊一嗓子:“喂~誰(shuí)是192.168.0.2?我是192.168.0.1,我的MAC地址是AA-AA-AA-AA-AA-AA 。你的MAC地址是什么,快告訴我”,這時(shí)候主機(jī)A發(fā)的數(shù)據(jù)包類型為:廣播-請(qǐng)求。
當(dāng)主機(jī)B接收到來(lái)自主機(jī)A的“ARP廣播-請(qǐng)求”數(shù)據(jù)包后,它會(huì)先把主機(jī)A的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,然后它會(huì)給主機(jī)A發(fā)送一個(gè)“ARP非廣播-回復(fù)”數(shù)據(jù)包,其作用相當(dāng)于告訴主機(jī)A:“嘿,我是192.168.0.2,我的MAC地址是BB-BB-BB-BB-BB-BB”。當(dāng)主機(jī)A接收到主機(jī)B的回復(fù)后,它會(huì)把主機(jī)B的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,之后主機(jī)A和B就可以進(jìn)行通訊了。
從上述局域網(wǎng)主機(jī)通訊過(guò)程可以看出,主機(jī)在兩種情況下會(huì)保存、更新本機(jī)的ARP緩存表, 1. 接收到“ARP廣播-請(qǐng)求”包時(shí) 2. 接收到“ARP非廣播-回復(fù)”包時(shí)
這種機(jī)制,或者說(shuō)ARP協(xié)議的設(shè)計(jì),會(huì)不會(huì)存在問(wèn)題呢?
ARP協(xié)議工作原理 ARP數(shù)據(jù)包根據(jù)接收對(duì)象不同,可分為兩種: 1. 廣播包(Broadcast)。廣播包目的MAC地址為FF-FF-FF-FF-FF-FF,交換機(jī)設(shè)備接收到廣播包后,會(huì)把它轉(zhuǎn)發(fā)給局域網(wǎng)內(nèi)的所有主機(jī)。 2. 非廣播包(Non-Broadcast)。非廣播包后只有指定的主機(jī)才能接收到。
ARP數(shù)據(jù)包根據(jù)功能不同,也可以分為兩種: 1. ARP請(qǐng)求包(ARP Request)。ARP請(qǐng)求包的作用是用于獲取局域網(wǎng)內(nèi)某IP對(duì)應(yīng)的MAC地址。 2. ARP回復(fù)包(ARP Reply)。ARP回復(fù)包的作用是告知?jiǎng)e的主機(jī),本機(jī)的IP地址和MAC是什么。
廣播的一般都是ARP請(qǐng)求包,非廣播的一般都是ARP回復(fù)包。
假設(shè)局域網(wǎng)內(nèi)有以下兩臺(tái)主機(jī),主機(jī)名、IP地址、MAC地址分別如下: 主機(jī)名 IP地址 MAC地址 A 192.168.0.1 AA-AA-AA-AA-AA-AA B 192.168.0.2 BB-BB-BB-BB-BB-BB
當(dāng)主機(jī)A需要與主機(jī)B進(jìn)行通訊時(shí),它會(huì)先查一下本機(jī)的ARP緩存中,有沒(méi)有主機(jī)B的MAC地址。如果有就可以直接通訊。如果沒(méi)有,主機(jī)A就需要通過(guò)ARP協(xié)議來(lái)獲取主機(jī)B的MAC地址,具體做法相當(dāng)于主機(jī)A向局域網(wǎng)內(nèi)所有主機(jī)喊一嗓子:“喂~誰(shuí)是192.168.0.2?我是192.168.0.1,我的MAC地址是AA-AA-AA-AA-AA-AA 。你的MAC地址是什么,快告訴我”,這時(shí)候主機(jī)A發(fā)的數(shù)據(jù)包類型為:廣播-請(qǐng)求。
當(dāng)主機(jī)B接收到來(lái)自主機(jī)A的“ARP廣播-請(qǐng)求”數(shù)據(jù)包后,它會(huì)先把主機(jī)A的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,然后它會(huì)給主機(jī)A發(fā)送一個(gè)“ARP非廣播-回復(fù)”數(shù)據(jù)包,其作用相當(dāng)于告訴主機(jī)A:“嘿,我是192.168.0.2,我的MAC地址是BB-BB-BB-BB-BB-BB”。當(dāng)主機(jī)A接收到主機(jī)B的回復(fù)后,它會(huì)把主機(jī)B的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,之后主機(jī)A和B就可以進(jìn)行通訊了。
從上述局域網(wǎng)主機(jī)通訊過(guò)程可以看出,主機(jī)在兩種情況下會(huì)保存、更新本機(jī)的ARP緩存表, 1. 接收到“ARP廣播-請(qǐng)求”包時(shí) 2. 接收到“ARP非廣播-回復(fù)”包時(shí)
這種機(jī)制,或者說(shuō)ARP協(xié)議的設(shè)計(jì),會(huì)不會(huì)存在問(wèn)題呢?
ARP協(xié)議工作原理 ARP數(shù)據(jù)包根據(jù)接收對(duì)象不同,可分為兩種: 1. 廣播包(Broadcast)。廣播包目的MAC地址為FF-FF-FF-FF-FF-FF,交換機(jī)設(shè)備接收到廣播包后,會(huì)把它轉(zhuǎn)發(fā)給局域網(wǎng)內(nèi)的所有主機(jī)。 2. 非廣播包(Non-Broadcast)。非廣播包后只有指定的主機(jī)才能接收到。
ARP數(shù)據(jù)包根據(jù)功能不同,也可以分為兩種: 1. ARP請(qǐng)求包(ARP Request)。ARP請(qǐng)求包的作用是用于獲取局域網(wǎng)內(nèi)某IP對(duì)應(yīng)的MAC地址。 2. ARP回復(fù)包(ARP Reply)。ARP回復(fù)包的作用是告知?jiǎng)e的主機(jī),本機(jī)的IP地址和MAC是什么。
廣播的一般都是ARP請(qǐng)求包,非廣播的一般都是ARP回復(fù)包。
假設(shè)局域網(wǎng)內(nèi)有以下兩臺(tái)主機(jī),主機(jī)名、IP地址、MAC地址分別如下: 主機(jī)名 IP地址 MAC地址 A 192.168.0.1 AA-AA-AA-AA-AA-AA B 192.168.0.2 BB-BB-BB-BB-BB-BB
當(dāng)主機(jī)A需要與主機(jī)B進(jìn)行通訊時(shí),它會(huì)先查一下本機(jī)的ARP緩存中,有沒(méi)有主機(jī)B的MAC地址。如果有就可以直接通訊。如果沒(méi)有,主機(jī)A就需要通過(guò)ARP協(xié)議來(lái)獲取主機(jī)B的MAC地址,具體做法相當(dāng)于主機(jī)A向局域網(wǎng)內(nèi)所有主機(jī)喊一嗓子:“喂~誰(shuí)是192.168.0.2?我是192.168.0.1,我的MAC地址是AA-AA-AA-AA-AA-AA 。你的MAC地址是什么,快告訴我”,這時(shí)候主機(jī)A發(fā)的數(shù)據(jù)包類型為:廣播-請(qǐng)求。
當(dāng)主機(jī)B接收到來(lái)自主機(jī)A的“ARP廣播-請(qǐng)求”數(shù)據(jù)包后,它會(huì)先把主機(jī)A的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,然后它會(huì)給主機(jī)A發(fā)送一個(gè)“ARP非廣播-回復(fù)”數(shù)據(jù)包,其作用相當(dāng)于告訴主機(jī)A:“嘿,我是192.168.0.2,我的MAC地址是BB-BB-BB-BB-BB-BB”。當(dāng)主機(jī)A接收到主機(jī)B的回復(fù)后,它會(huì)把主機(jī)B的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,之后主機(jī)A和B就可以進(jìn)行通訊了。
從上述局域網(wǎng)主機(jī)通訊過(guò)程可以看出,主機(jī)在兩種情況下會(huì)保存、更新本機(jī)的ARP緩存表, 1. 接收到“ARP廣播-請(qǐng)求”包時(shí) 2. 接收到“ARP非廣播-回復(fù)”包時(shí)
這種機(jī)制,或者說(shuō)ARP協(xié)議的設(shè)計(jì),會(huì)不會(huì)存在問(wèn)題呢?
ARP是地址轉(zhuǎn)換協(xié)議(Address Resolution Protocol)的英文縮寫(xiě),它是一個(gè)鏈路層協(xié)議,工作在OSI模型的第二層,在本層和硬件接口間進(jìn)行聯(lián)系,同時(shí)對(duì)上層(網(wǎng)絡(luò)層)提供服務(wù)。 二層的以太網(wǎng)交換設(shè)備并不能識(shí)別32位的IP地址,它們是以48位以太網(wǎng)地址(就是我們常說(shuō)的MAC地址)傳輸以太網(wǎng)數(shù)據(jù)包的。也就是說(shuō)IP數(shù)據(jù)包在局域網(wǎng)內(nèi)部傳輸時(shí)并不是靠IP地址而是靠MAC地址來(lái)識(shí)別目標(biāo)的,因此IP地址與MAC地址之間就必須存在一種對(duì)應(yīng)關(guān)系,而ARP協(xié)議就是用來(lái)確定這種對(duì)應(yīng)關(guān)系的協(xié)議。
ARP數(shù)據(jù)包根據(jù)接收對(duì)象不同,可分為兩種: 1. 廣播包(Broadcast)。廣播包目的MAC地址為FF-FF-FF-FF-FF-FF,交換機(jī)設(shè)備接收到廣播包后,會(huì)把它轉(zhuǎn)發(fā)給局域網(wǎng)內(nèi)的所有主機(jī)。 2. 非廣播包(Non-Broadcast)。非廣播包后只有指定的主機(jī)才能接收到。 ARP數(shù)據(jù)包根據(jù)功能不同,也可以分為兩種: 1. ARP請(qǐng)求包(ARP Request)。ARP請(qǐng)求包的作用是用于獲取局域網(wǎng)內(nèi)某IP對(duì)應(yīng)的MAC地址。 2. ARP回復(fù)包(ARP Reply)。ARP回復(fù)包的作用是告知?jiǎng)e的主機(jī),本機(jī)的IP地址和MAC是什么。 廣播的一般都是ARP請(qǐng)求包,非廣播的一般都是ARP回復(fù)包。 假設(shè)局域網(wǎng)內(nèi)有以下兩臺(tái)主機(jī),主機(jī)名、IP地址、MAC地址分別如下: 主機(jī)名 IP地址 MAC地址 A 192.168.0.1 AA-AA-AA-AA-AA-AA B 192.168.0.2 BB-BB-BB-BB-BB-BB 當(dāng)主機(jī)A需要與主機(jī)B進(jìn)行通訊時(shí),它會(huì)先查一下本機(jī)的ARP緩存中,有沒(méi)有主機(jī)B的MAC地址。如果有就可以直接通訊。如果沒(méi)有,主機(jī)A就需要通過(guò)ARP協(xié)議來(lái)獲取主機(jī)B的MAC地址,具體做法相當(dāng)于主機(jī)A向局域網(wǎng)內(nèi)所有主機(jī)喊一嗓子:“喂~誰(shuí)是192.168.0.2?我是192.168.0.1,我的MAC地址是AA-AA-AA-AA-AA-AA 。你的MAC地址是什么,快告訴我”,這時(shí)候主機(jī)A發(fā)的數(shù)據(jù)包類型為:廣播-請(qǐng)求。 當(dāng)主機(jī)B接收到來(lái)自主機(jī)A的“ARP廣播-請(qǐng)求”數(shù)據(jù)包后,它會(huì)先把主機(jī)A的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,然后它會(huì)給主機(jī)A發(fā)送一個(gè)“ARP非廣播-回復(fù)”數(shù)據(jù)包,其作用相當(dāng)于告訴主機(jī)A:“嘿,我是192.168.0.2,我的MAC地址是BB-BB-BB-BB-BB-BB”。當(dāng)主機(jī)A接收到主機(jī)B的回復(fù)后,它會(huì)把主機(jī)B的IP地址和MAC地址對(duì)應(yīng)關(guān)系保存/更新到本機(jī)的ARP緩存表中,之后主機(jī)A和B就可以進(jìn)行通訊了。
ARP欺騙帶來(lái)的危害可以分為幾大類, 1. 網(wǎng)絡(luò)異常。具體表現(xiàn)為:掉線、IP沖突等。 2. 數(shù)據(jù)竊取。具體表現(xiàn)為:個(gè)人隱私泄漏(如MSN聊天記錄、郵件等)、賬號(hào)被盜用(如QQ賬號(hào)、銀行賬號(hào)等)。 3. 數(shù)據(jù)篡改。具體表現(xiàn)為:訪問(wèn)的網(wǎng)頁(yè)被添加了惡意內(nèi)容,俗稱“掛馬”。 4. 非法控制。具體表現(xiàn)為:網(wǎng)絡(luò)速度、網(wǎng)絡(luò)訪問(wèn)行為(例如某些網(wǎng)頁(yè)打不開(kāi)、某些網(wǎng)絡(luò)應(yīng)用程序用不了)受第三者非法控制。
ARP欺騙根據(jù)發(fā)起個(gè)體的不同可以分為兩類, 1. 人為攻擊。人為攻擊的目的主要是:造成網(wǎng)絡(luò)異常、竊取數(shù)據(jù)、非法控制。 2. ARP病毒。ARP病毒不是特指某一種病毒,而是指所有包含有ARP欺騙功能的病毒的總稱。ARP病毒的目的主要是:竊取數(shù)據(jù)(盜號(hào)等)、篡改數(shù)據(jù)(掛馬等)。
從目前的情況來(lái)看,ARP欺騙(不管是人為的還是ARP病毒)大多數(shù)是在網(wǎng)絡(luò)異常后被發(fā)現(xiàn)的。請(qǐng)注意,精心策劃的人為ARP欺騙、設(shè)計(jì)良好的ARP病毒,是不會(huì)造成網(wǎng)絡(luò)異常的,所以網(wǎng)絡(luò)沒(méi)有出現(xiàn)異常并不代表不存在ARP欺騙問(wèn)題! |