由于局域網(wǎng)的網(wǎng)絡(luò)流通不是根據(jù)IP地址進(jìn)行,而是按照MAC地址進(jìn)行傳輸。所以,那個(gè)偽造出來(lái)的MAC地址在A上被改變成一個(gè)不存在的MAC地址,這樣就會(huì)造成網(wǎng)絡(luò)不通,導(dǎo)致A不能Ping通C!這就是一個(gè)簡(jiǎn)單的ARP欺騙。
ARP欺騙說(shuō)明:
ARP(Address Resolution Protocol)是地址解析協(xié)議,是一種將IP地址轉(zhuǎn)化成物理地址的協(xié)議。從IP地址到物理地址的映射有兩種方式:表格方式和非表格方式。ARP具體說(shuō)來(lái)就是將網(wǎng)絡(luò)層(也就是相當(dāng)于OSI的第三層)地址解析為數(shù)據(jù)鏈路層(也就是相當(dāng)于OSI的第二層)的物理地址(注:此處物理地址并不一定指MAC地址)。
ARP欺騙原理:
某機(jī)器A要向主機(jī)B發(fā)送報(bào)文,會(huì)查詢本地的ARP緩存表,找到B的IP地址對(duì)應(yīng)的MAC地址后,就會(huì)進(jìn)行數(shù)據(jù)傳輸。如果未找到,則A廣播一個(gè)ARP請(qǐng)求報(bào)文(攜帶主機(jī)A的IP地址Ia——物理地址Pa),請(qǐng)求IP地址為Ib的主機(jī)B回答物理地址Pb。網(wǎng)上所有主機(jī)包括B都收到ARP請(qǐng)求,但只有主機(jī)B識(shí)別自己的IP地址,于是向A主機(jī)發(fā)回一個(gè)ARP響應(yīng)報(bào)文。其中就包含有B的MAC地址,A接收到B的應(yīng)答后,就會(huì)更新本地的ARP緩存。接著使用這個(gè)MAC地址發(fā)送數(shù)據(jù)(由網(wǎng)卡附加MAC地址)。因此,本地高速緩存的這個(gè)ARP表是本地網(wǎng)絡(luò)流通的基礎(chǔ),而且這個(gè)緩存是動(dòng)態(tài)的。
ARP欺騙協(xié)議:
ARP協(xié)議并不只在發(fā)送了ARP請(qǐng)求才接收ARP應(yīng)答。當(dāng)計(jì)算機(jī)接收到ARP應(yīng)答數(shù)據(jù)包的時(shí)候,就會(huì)對(duì)本地的ARP緩存進(jìn)行更新,將應(yīng)答中的IP和MAC地址存儲(chǔ)在ARP緩存中。因此,當(dāng)局域網(wǎng)中的某臺(tái)機(jī)器B向A發(fā)送一個(gè)自己偽造的ARP應(yīng)答,而如果這個(gè)應(yīng)答是B冒充C偽造來(lái)的,即IP地址為C的IP,而MAC地址是偽造的,則當(dāng)A接收到B偽造的ARP應(yīng)答后,就會(huì)更新本地的ARP緩存,這樣在A看來(lái)C的IP地址沒(méi)有變,而它的MAC地址已經(jīng)不是原來(lái)那個(gè)了。