ARP-地址解析协议(在实践中深入理解ARP协议)
在同一個(gè)網(wǎng)絡(luò)(無(wú)特別說(shuō)明,均指以太網(wǎng)絡(luò))中進(jìn)行通信的主機(jī),必須要擁有目標(biāo)主機(jī)的MAC地址才能夠正確地將數(shù)據(jù)發(fā)送給目標(biāo)主機(jī),那么如何知道目標(biāo)主機(jī)的MAC地址呢?可以通過(guò)ARP協(xié)議。ARP協(xié)議就是用來(lái)獲取目標(biāo)IP地址所對(duì)應(yīng)的MAC地址的,也就是說(shuō),ARP協(xié)議可以動(dòng)態(tài)地在三層IP地址和二層MAC地址之間建立一種映射關(guān)系。可以用如下示意圖來(lái)形象表示其作用:
可以看到上面的圖示是把ARP協(xié)議劃分到網(wǎng)絡(luò)層,也既是認(rèn)為它是一個(gè)網(wǎng)絡(luò)層的協(xié)議,這是出于它為網(wǎng)絡(luò)層的IP協(xié)議提供服務(wù)而考慮的。但實(shí)際上,由于ARP協(xié)議用以解析出IP地址(邏輯地址)所對(duì)應(yīng)數(shù)據(jù)鏈路層中的地址(物理地址/硬件地址),所以把其劃分在數(shù)據(jù)鏈路層也是沒(méi)有問(wèn)題的,這并沒(méi)有嚴(yán)格的定義。
我們下面將通過(guò)具體的實(shí)踐過(guò)程來(lái)分析四種常見(jiàn)的ARP包:ARP請(qǐng)求包、ARP響應(yīng)包、無(wú)償ARP包與IP地址沖突檢測(cè),同時(shí)也會(huì)分析一下ARP代理的發(fā)生過(guò)程。
這里會(huì)使用的環(huán)境如下:
網(wǎng)絡(luò)設(shè)備模擬器:GNS3
抓包軟件:Wireshark
1.網(wǎng)絡(luò)環(huán)境搭建
為了簡(jiǎn)潔起見(jiàn),這里不設(shè)置一個(gè)較大的網(wǎng)絡(luò)環(huán)境來(lái)滿(mǎn)足前面四種情況ARP包分析的需要,而是在分析不同的ARP情況時(shí)分別搭建較小的網(wǎng)絡(luò)環(huán)境,這樣可以使我們的分析更有針對(duì)性。
2.ARP包報(bào)文格式
?
如下:
注意我們關(guān)注的是28字節(jié)的ARP包,只不過(guò)上面的圖還包含了以太網(wǎng)首部字段信息(顯然以太網(wǎng)首部的幀類(lèi)型為ARP,在分析IP協(xié)議時(shí)提到過(guò),這是一個(gè)數(shù)據(jù)分用的概念)。
因?yàn)閷?duì)于ARP包的分析,其實(shí)我們更關(guān)心的應(yīng)該是ARP請(qǐng)求包、ARP響應(yīng)包、無(wú)償ARP包或者ARP代理相關(guān)的知識(shí),而后面的實(shí)踐也主要是分類(lèi)地進(jìn)行討論。所以下面先給出一個(gè)普通ARP包(請(qǐng)求包)的實(shí)際結(jié)構(gòu),然后再給出每一個(gè)字段的具體含義(參考了《TCP/IP詳解 卷1:協(xié)議》的部分內(nèi)容),先作一個(gè)基本的了解,最后再詳細(xì)分析這些包產(chǎn)生的過(guò)程:
-
一個(gè)普通ARP包(請(qǐng)求包的實(shí)際結(jié)構(gòu))
-
ARP包各字段具體含義(對(duì)比上面實(shí)際抓到的包)
字段 含義 硬件類(lèi)型 占16位
表示硬件地址的類(lèi)型,值為1即表示以太網(wǎng)地址,也就是MAC地址
協(xié)議類(lèi)型 點(diǎn)16位
表示要映射的協(xié)議地址類(lèi)型,值為0x0800即表示IP地址,因?yàn)楸疚亩际窃贗P協(xié)議的基礎(chǔ)上進(jìn)行分析的(即網(wǎng)絡(luò)層邏輯地址為IP地址),所以所抓到的包的該字段類(lèi)型都為0x0800
硬件地址長(zhǎng)度 占8位
指出硬件地址的長(zhǎng)度,單位為字節(jié),因?yàn)楸疚尼槍?duì)的是以太網(wǎng),而以太網(wǎng)地址為MAC地址,占48位,即6字節(jié),所以后面抓到的包中該字段的值都為6,不再作特別說(shuō)明
協(xié)議地址長(zhǎng)度 占8位
指出三層邏輯地址的長(zhǎng)度,單位為字節(jié),因?yàn)楸疚尼槍?duì)的是以太網(wǎng)地址和IP地址的映射,而IP地址占32位,即6字節(jié),所以后面抓到的包中該字段的值都為4,不再作特別說(shuō)明
操作字段 指出操作類(lèi)型,對(duì)應(yīng)的值如下:
ARP請(qǐng)求:1
ARP響應(yīng):2
RARP請(qǐng)求:3
RARP響應(yīng):4
但因?yàn)镽ARP現(xiàn)在已經(jīng)很少使用了,所以本文不會(huì)討論
發(fā)送端以太網(wǎng)地址 占48位
準(zhǔn)確上說(shuō)是“發(fā)送端硬件地址”,但因?yàn)楸疚闹会槍?duì)以太網(wǎng)進(jìn)行討論,所以表述為“發(fā)送端以太網(wǎng)地址”
發(fā)送端IP地址 占32位
準(zhǔn)確上說(shuō)是“發(fā)送端網(wǎng)絡(luò)層邏輯地址”,但因?yàn)楸疚闹会槍?duì)的是以太網(wǎng)地址和IP地址的映射的討論,所以表述為“發(fā)送端IP地址”
目的以太網(wǎng)地址 占48位 目的IP地址 占32位 ?
3.在實(shí)踐中分析ARP的實(shí)現(xiàn)過(guò)程:ARP請(qǐng)求、ARP響應(yīng)
(1)網(wǎng)絡(luò)環(huán)境搭建
本節(jié)主要是抓取ARP請(qǐng)求包和ARP響應(yīng)包來(lái)分析ARP請(qǐng)求與響應(yīng)的一個(gè)詳細(xì)過(guò)程,以及對(duì)應(yīng)ARP包中相關(guān)字段的含義,這個(gè)實(shí)踐的網(wǎng)絡(luò)環(huán)境比較簡(jiǎn)單,如下:
在R1路由器上做如下配置:
R1#conft R1(config)#intf0/0 R1(config-if)#noshu R1(config-if)#ipadd192.168.1.1255.255.255.0 R1(config-if)#dowr在R2路由器上做如下配置:
R2#conft R2(config)#intf0/0 R2(config-if)#noshu R2(config-if)#ipadd192.168.1.2255.255.255.0 R2(config-if)#dowr然后在R1路由器上查看arp緩存表:
R1#showarp ProtocolAddressAge(min)HardwareAddrTypeInterface Internet192.168.1.1-cc01.127f.0000ARPAFastEthernet0/0可以看到arp緩存表中并沒(méi)有192.168.1.2的MAC地址,所以如果待會(huì)R1發(fā)送數(shù)據(jù)給R2,必然會(huì)有ARP請(qǐng)求發(fā)生,所以這里請(qǐng)確保R1中確實(shí)沒(méi)有192.168.1.2的MAC地址,如果有的話(huà),建議重啟兩個(gè)路由器。(雖然可以在路由器上執(zhí)行clear arp-cache來(lái)清除arp緩存表,但是清除過(guò)后又會(huì)馬上生成,所以這里建議直接重啟)
(2)抓取并分析ARP請(qǐng)求包和ARP響應(yīng)包
首先在R1和R2的鏈路上啟動(dòng)Wireshark,監(jiān)測(cè)R1的接口。(這是GNS3的功能,可以直接抓取通過(guò)兩個(gè)路由器之間鏈路的數(shù)據(jù)包)
在R1上執(zhí)行如下命令:
Router#ping192.168.1.2Typeescapesequencetoabort. Sending5,100-byteICMPEchosto192.168.1.2,timeoutis2seconds: .!!!! Successrateis80percent(4/5),round-tripmin/avg/max=44/62/76ms!表示數(shù)據(jù)發(fā)送成功,可以看到第一個(gè)是".",則表示數(shù)據(jù)發(fā)送失敗,這是因?yàn)?#xff0c;第一個(gè)包在發(fā)送時(shí),R1中并沒(méi)有192.168.1.2的MAC地址,于是就去發(fā)送ARP請(qǐng)求來(lái)獲得其MAC地址,但是當(dāng)獲得MAC地址之后,第一個(gè)包已經(jīng)超時(shí)了(等待MAC地址超時(shí)),并沒(méi)有發(fā)送出去,可以看下面抓到的包:
可以看到已經(jīng)有2個(gè)ARP包(1個(gè)請(qǐng)求和1回答)和8個(gè)ICMP包(4個(gè)請(qǐng)求和4個(gè)回答),這里我們主要分析的是ARP包。
-
ARP請(qǐng)求包
數(shù)據(jù)包結(jié)構(gòu)如下:
字段分析如下:
a.硬件類(lèi)型、協(xié)議類(lèi)型、硬件地址長(zhǎng)度、協(xié)議地址長(zhǎng)度
這幾個(gè)字段的內(nèi)容跟前面討論的一樣,因?yàn)獒槍?duì)的是以太網(wǎng)和IP地址
b.操作字段Opcode
可以看到Opcode的值為request(1),所以這是一個(gè)ARP請(qǐng)求包。
c.發(fā)送端以太網(wǎng)地址
我們是從R1向R2發(fā)送數(shù)據(jù)的。
從前面的命令執(zhí)行結(jié)果:
R1#showarp ProtocolAddressAge(min)HardwareAddrTypeInterface Internet192.168.1.1-cc01.127f.0000ARPAFastEthernet0/0這確實(shí)是R1的MAC地址(配置了192.168.1.1 IP地址的接口的MAC地址)。
d.發(fā)送端IP地址
發(fā)送端也確實(shí)是192.168.1.1,也就是R1。
e.目的以太網(wǎng)地址
可以看到這里為全0,在ARP請(qǐng)求包中,會(huì)把目的以太網(wǎng)地址字段的值置為全0,因?yàn)榇藭r(shí)并不知道目的以太網(wǎng)地址是什么(也就是不知道192.168.1.2的MAC地址是多少)。
f.目的IP地址
數(shù)據(jù)包是從R1發(fā)送給R2的,所以目的IP地址就是192.168.1.2,R2收到這個(gè)ARP請(qǐng)求包之后,如果看到這個(gè)字段的內(nèi)容是自己的IP地址,就會(huì)回復(fù)這個(gè)ARP包,也就是會(huì)發(fā)送一個(gè)ARP響應(yīng)包。
其實(shí)字段內(nèi)容并不難理解,不過(guò)這里需要注意一點(diǎn)是,查看這個(gè)ARP請(qǐng)求包的數(shù)據(jù)鏈路層的目的MAC地址:
會(huì)發(fā)現(xiàn)其是一個(gè)廣播地址,這也就意味著,發(fā)送一個(gè)ARP請(qǐng)求包,以太網(wǎng)中的所有主機(jī)都能夠收到該ARP請(qǐng)求包,但是并不是所有的主機(jī)都會(huì)回復(fù)這個(gè)ARP請(qǐng)求包,只有當(dāng)接收者的IP地址與ARP請(qǐng)求包中的Target IP address中標(biāo)識(shí)的目的IP地址一致時(shí)才會(huì)進(jìn)行回復(fù)。
-
ARP響應(yīng)包
數(shù)據(jù)包結(jié)構(gòu)如下:
對(duì)比ARP請(qǐng)求包來(lái)分析,其實(shí)發(fā)現(xiàn)并沒(méi)有相關(guān)多少,只是有以下幾點(diǎn)區(qū)別:a.ARP響應(yīng)包的操作字段Opcode值為reply(2)
b.ARP響應(yīng)包的二層目的MAC地址為ARP請(qǐng)求包發(fā)送者的MAC地址
也就是說(shuō),ARP請(qǐng)求包是以廣播的形式發(fā)送的,但ARP則是以單播的形式發(fā)送的,那么發(fā)給誰(shuí)呢?ARP請(qǐng)求包是誰(shuí)發(fā)送的,ARP響應(yīng)包就發(fā)給誰(shuí),對(duì)應(yīng)的二層目的MAC地址就是ARP請(qǐng)求包發(fā)送者的MAC地址
c.發(fā)送端以太網(wǎng)地址、發(fā)送端IP地址、目的以太網(wǎng)地址、目的IP地址
跟ARP請(qǐng)求包的內(nèi)容相反,只不過(guò)ARP響應(yīng)包中的所有地址字段的值都是已知的,這個(gè)很容易理解,不過(guò)需要注意的是,在這個(gè)時(shí)候,ARP響應(yīng)包到底要發(fā)給誰(shuí),已經(jīng)很明確了,所以ARP響應(yīng)包是一個(gè)單播包。
正如上面看到的,理解常規(guī)的ARP請(qǐng)求包和ARP響應(yīng)包的過(guò)程并不復(fù)雜,只要知道了網(wǎng)絡(luò)通信的基本原理,各個(gè)字段的值也就很容易理解了。
4.在實(shí)踐中分析ARP的實(shí)現(xiàn)過(guò)程:無(wú)償ARP與IP地址沖突檢測(cè)
-
有償ARP
前面在獲取某個(gè)IP地址對(duì)應(yīng)的MAC地址是,都需要先發(fā)送一個(gè)ARP請(qǐng)求包,然后再通過(guò)接收一個(gè)ARP響應(yīng)包來(lái)知道該IP地址所對(duì)應(yīng)的MAC地址,因?yàn)樾枰l(fā)送ARP請(qǐng)求包,我們可以認(rèn)為這是“有償”的,即要付出一些代價(jià)。
-
無(wú)償ARP
而所謂無(wú)償ARP,指的就是,我不需要發(fā)送一個(gè)ARP請(qǐng)求包,對(duì)方就會(huì)“無(wú)償”地把一個(gè)ARP響應(yīng)包發(fā)給我(其實(shí)也主是主動(dòng)發(fā)送過(guò)來(lái)),以此來(lái)告訴我它的MAC地址。
(1)網(wǎng)絡(luò)環(huán)境搭建
但是在總結(jié)什么時(shí)候?qū)Ψ綍?huì)主動(dòng)把一個(gè)ARP響應(yīng)包發(fā)送過(guò)來(lái)之前,我們先實(shí)踐一下,網(wǎng)絡(luò)環(huán)境還是用上面的那個(gè):
不過(guò)我們需要修改一下R2的IP地址,修改為192.168.1.252(在這個(gè)過(guò)程中抓包軟件Wireshark要打開(kāi)),如下:
R2>en R2#conft R2(config)#intf0/0 R2(config-if)#ipadd192.168.1.252255.255.255.0?
(2)抓取并分析ARP請(qǐng)求包和ARP響應(yīng)包
這樣做之后打開(kāi)Wireshark軟件,會(huì)發(fā)現(xiàn)抓到下面這樣一個(gè)包:
可以看到Info一列,有個(gè)Gratutous的標(biāo)識(shí),中文意思就是“無(wú)償,免費(fèi)”的意思,我們可以查看一下數(shù)據(jù)包的結(jié)構(gòu):
通過(guò)查看操作字段Opcode的值,其實(shí)可以發(fā)現(xiàn),無(wú)償ARP其實(shí)也是一個(gè)ARP響應(yīng)包(不過(guò)普通的ARP響應(yīng)包是以單播的形式發(fā)送的,而無(wú)償ARP是以廣播的形式發(fā)送的),只不過(guò)這個(gè)ARP響應(yīng)包比較特別,它是主動(dòng)發(fā)送的,即它是gratuitous,無(wú)償?shù)摹?/strong>
另外需要注意的是,發(fā)送端IP地址和目的IP地址是一樣,這正是無(wú)償ARP有別于普通ARP響應(yīng)包的地方,當(dāng)這個(gè)數(shù)據(jù)包被網(wǎng)絡(luò)中的其他主機(jī)(顯然我們這里的網(wǎng)絡(luò)環(huán)境比較簡(jiǎn)單,所以只有R1)接收到之后,它會(huì)讓這些主機(jī)使用新的IP和MAC地址關(guān)系更新它們的ARP緩存表。因?yàn)檫@個(gè)ARP數(shù)據(jù)包是未經(jīng)請(qǐng)求的,即導(dǎo)致客戶(hù)端更新ARP緩存,所以會(huì)稱(chēng)為無(wú)償ARP。
在分析了無(wú)償ARP之后,給出下面的幾種情況,都會(huì)有無(wú)償ARP過(guò)程的發(fā)生:
a.更改了設(shè)備的IP地址
b.某些操作系統(tǒng)在啟動(dòng)完成之后就會(huì)發(fā)送無(wú)償ARP(Windows和Linux都會(huì))
?
(3)IP地址沖突檢測(cè)
再分析一下,無(wú)償ARP有什么好處呢?如下:
a.可以讓以太網(wǎng)中的主機(jī)及時(shí)地更新其ARP緩存表,這樣可以確保在數(shù)據(jù)發(fā)送時(shí)可以準(zhǔn)確地封閉正確的地址信息
b.檢測(cè)IP地址是否有沖突
關(guān)于這一點(diǎn),可以給R2重新配置一個(gè)IP地址,并且與R1的相同:
R2>en R2#conft R2(config)#intf0/0 R2(config-if)#ipadd192.168.1.1255.255.255.0幾乎馬上就可以在R1和R2的控制臺(tái)上看到錯(cuò)誤日志的輸出:
R1> *Mar100:54:39.007:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc02.1a18.0000 *Mar100:55:09.043:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc02.1a18.0000 *Mar100:55:39.739:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc02.1a18.0000 *Mar100:56:10.011:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc02.1a18.0000 *Mar100:56:40.715:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc02.1a18.0000 *Mar100:57:10.947:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc02.1a18.0000R2(config-if)# *Mar100:45:48.135:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000 *Mar100:46:18.623:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000 *Mar100:46:48.927:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000 *Mar100:47:19.651:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000 *Mar100:47:49.959:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000 *Mar100:48:21.623:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000 *Mar100:48:51.919:%IP-4-DUPADDR:Duplicateaddress192.168.1.1onFastEthernet0/0,sourcedbycc01.127f.0000這里因?yàn)樵谛薷牧薘2的IP地址時(shí),它發(fā)送了無(wú)償ARP包,R1通過(guò)檢查發(fā)現(xiàn)其IP地址跟自己的一樣,于是就會(huì)在控制臺(tái)上報(bào)錯(cuò),但是R2為什么又會(huì)報(bào)錯(cuò)呢?因?yàn)樵赗1發(fā)現(xiàn)地址有沖突時(shí),也發(fā)送了表示IP地址沖突的無(wú)償ARP包,如下:
注意這是一個(gè)廣播包,所以R2必然也能收到,查看它的包結(jié)構(gòu):
根據(jù)數(shù)據(jù)包的內(nèi)容,R2也知道發(fā)生了IP地址沖突,所以也就會(huì)在控制臺(tái)上輸出錯(cuò)誤日志了。
4.在實(shí)踐中分析ARP的實(shí)現(xiàn)過(guò)程:ARP代理
如果ARP請(qǐng)求是從一個(gè)網(wǎng)絡(luò)的主機(jī)發(fā)往另一個(gè)網(wǎng)絡(luò)上的主機(jī),那么連接這兩個(gè)網(wǎng)絡(luò)的路由器就可以回答這個(gè)請(qǐng)求,這個(gè)過(guò)程就稱(chēng)為ARP代理。這是非常精簡(jiǎn)和通俗易懂的解釋,我們可以通過(guò)下面的實(shí)踐來(lái)進(jìn)行體會(huì)。
(1)網(wǎng)絡(luò)環(huán)境搭建
如下:
在前面的基礎(chǔ)上,R1增加如下配置:
R1>en R1#conft R1(config)#iproute0.0.0.00.0.0.0f0/0R2增加如下配置:
R2>en R2#conft R2(config)#intf1/0 R2(config-if)#noshu R2(config-if)#ipadd192.168.2.2255.255.255.0 R2(config-if)#dowrR3則配置如下:
R3>en R3#conft R3(config)#intf0/0 R3(config-if)#noshu R3(config-if)#ipadd192.168.2.3255.255.255.0 R3(config-if)#iproute0.0.0.00.0.0.0f0/0 R3(config-if)#dowr?
(2)抓取ARP包并分析ARP代理過(guò)程
在R1和R2的鏈路上啟動(dòng)Wireshark,然后在R1上執(zhí)行如下命令:
R1#ping192.168.2.3Typeescapesequencetoabort. Sending5,100-byteICMPEchosto192.168.2.3,timeoutis2seconds: ...!! Successrateis40percent(2/5),round-tripmin/avg/max=36/50/64ms即R1給R3發(fā)送數(shù)據(jù),我們查看抓到的包:
再分別查看詳細(xì)的包結(jié)構(gòu):
-
ARP請(qǐng)求包
可以看到ARP請(qǐng)求包跟平常一樣,并沒(méi)有什么區(qū)別,即R1希望知道192.168.2.3的MAC地址。
-
ARP響應(yīng)包
看起來(lái)普通的ARP響應(yīng)包也沒(méi)有什么區(qū)別,其實(shí)真的是沒(méi)有什么區(qū)別,但不妨在R2上執(zhí)行下面的命令,查看一下ARP緩存表:
R2#sharp ProtocolAddressAge(min)HardwareAddrTypeInterface Internet192.168.1.13cc01.127f.0000ARPAFastEthernet0/0 Internet192.168.2.2-cc02.1a18.0010ARPAFastEthernet1/0 Internet192.168.2.33cc03.2327.0000ARPAFastEthernet1/0 Internet192.168.1.2-cc02.1a18.0000ARPAFastEthernet0/0在這個(gè)ARP緩存表中,192.168.2.3對(duì)應(yīng)的MAC地址是cc03.2327.0000,并不是上面看到的數(shù)據(jù)包結(jié)構(gòu)中的cc02.1a18.0000!!!cc02.1a18.0000是192.168.1.2對(duì)應(yīng)的MAC地址!!!可以分析如下:
R1想要知道192.168.2.3的MAC地址,于是發(fā)送ARP請(qǐng)求包,但很顯然,192.168.2.3跟192.168.1.1并不在同一個(gè)網(wǎng)絡(luò)中;當(dāng)192.168.1.2接口接收到這個(gè)ARP請(qǐng)求包時(shí),R2發(fā)現(xiàn)雖然192.168.2.3并不是自己,但是它可以到達(dá)192.168.2.3所在的網(wǎng)絡(luò),即192.168.2.0/24這個(gè)網(wǎng)絡(luò),于是它就向R1發(fā)回了一個(gè)ARP響應(yīng)包,告訴R1,192.168.2.3的MAC地址是自己(即配置了192.168.1.2的接口的MAC地址)。雖然這是一種“謊言”,但由于這樣做確實(shí)是可以幫R1把數(shù)據(jù)發(fā)送到R3,所以有時(shí)候我們也把ARP代理稱(chēng)作“善意的謊言”。 那么通過(guò)上面的實(shí)踐過(guò)程和分析之后也就非常清楚什么是ARP代理了。即如果ARP請(qǐng)求是從一個(gè)網(wǎng)絡(luò)的主機(jī)發(fā)往另一個(gè)網(wǎng)絡(luò)上的主機(jī),那么連接這兩個(gè)網(wǎng)絡(luò)的路由器就可以回答這個(gè)請(qǐng)求,這個(gè)過(guò)程就稱(chēng)為ARP代理。
上面這個(gè)過(guò)程需要體會(huì)一下,這樣一來(lái)的話(huà),相信對(duì)計(jì)算機(jī)網(wǎng)絡(luò)通信又會(huì)有了更深入的了解。
5.下一步要做什么
首先有時(shí)間當(dāng)然是自己也嘗試把上面的實(shí)踐完成一遍,好好分析一下ARP協(xié)議,其實(shí)ARP協(xié)議所涉及到的重要的內(nèi)容,上面的實(shí)踐過(guò)程基本上都已經(jīng)全部給出,真的不能錯(cuò)過(guò)。
如果覺(jué)得自己已經(jīng)掌握了的話(huà),可以嘗試去了解一下ARP欺騙的原理,看看其實(shí)是不是很簡(jiǎn)單。
-
-
-
-
-
-
-
總結(jié)
以上是生活随笔為你收集整理的ARP-地址解析协议(在实践中深入理解ARP协议)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: B - Ada and Queue
- 下一篇: js和jsp所有页面跳转总结