明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

ARP協(xié)議的探測原理_ARP原理

[摘要]ARP(Address Resolution Protool)協(xié)議是地址解析協(xié)議的縮寫。 以太網(wǎng)中, 一個主機(jī)要和另 臺主機(jī)進(jìn)行通信, 必須要知道目標(biāo)主機(jī)的MAC地址, 而網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)幀里面就...

ARP(Address Resolution Protool)協(xié)議是地址解析協(xié)議的縮寫。 以太網(wǎng)中, 一個主機(jī)要和另

臺主機(jī)進(jìn)行通信, 必須要知道目標(biāo)主機(jī)的MAC地址, 而網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)幀里面就包含目的主機(jī)

MAC地址。 這個目的MAC地址由ARP協(xié)議獲得, 地址解析的過程就是主機(jī)在發(fā)送幀前, 將目

IP地址作為參數(shù), 獲取目標(biāo)MAC地址的過程。 主機(jī)首先檢查ARP映射表, 看是否有與目的IPx

應(yīng)的MAC地址。 如果檢查到了匹配的MAC地址, 則將該地址封裝到數(shù)據(jù)幀中并送到輸出隊(duì)列等

待發(fā)送。 如果沒有找到匹配的MAC地址, 則發(fā)送一個含有目的節(jié)點(diǎn)IP地址的廣播包來詢問該Ⅱ

對應(yīng)的MAC地址。 目標(biāo)節(jié)點(diǎn)收到該廣播包后會給源節(jié)點(diǎn)發(fā)送ARP應(yīng)答, 告訴源節(jié)點(diǎn)它的MAC地

址。 源節(jié)點(diǎn)收到ARP應(yīng)答后, 會更新它的ARP映射緩存。 ARP協(xié)議的探測原理

在Windows中, 可以利用SendARPAPI函數(shù)獲知某IP地址(函數(shù)的輸入)對應(yīng)主機(jī)的MAC地

址, 若該IP是死點(diǎn), 則該函數(shù)返回錯誤值, 也就能判斷某IP是否為死點(diǎn)。 在調(diào)用SemdARP前, 必須

調(diào)用FlushlpNetTableAPl函數(shù)清除主機(jī)的ARP緩存。 ARP協(xié)議有一個特點(diǎn):ARP數(shù)據(jù)包不能跨越

路由器。 而在CIN中, 眾多的子網(wǎng)是由路由器或具有路由功能的高端交換機(jī)分隔開的, 因此, 只能

在同一個子網(wǎng)(稱為網(wǎng)段)使用ARP協(xié)議探測其他IP。 為了解決該問題, 我們利用認(rèn)證成功的認(rèn)

證Agent作為我們的探測代理。 原理如下控制中心負(fù)責(zé)探測與其同一網(wǎng)段的其他IP, 對于其他的

我的手機(jī) 2017/9/14 9:48:05

各個網(wǎng)段, 控制中心搜尋相應(yīng)認(rèn)證成功的認(rèn)證Aent作為探測代理, 由后者負(fù)責(zé)探測與之同一網(wǎng)段

的其他IP信息, 探測完畢后轉(zhuǎn)發(fā)給控制中心。 在此過程中, 控制中心負(fù)責(zé)搜尋探測代理, 發(fā)送探測

任務(wù)及參數(shù), 接收探測結(jié)果并顯示在人機(jī)界面中, 若探測某主機(jī)未受監(jiān)控, 則采取相關(guān)措施懲罰該

用戶。

我們前面提到, 在探測到某IP是活動節(jié)點(diǎn)后, 由控制中心(實(shí)際上是自檢測保護(hù)服務(wù)的

Scanner)或探測代理(稱為Spy)發(fā)送加密信息給該節(jié)點(diǎn), 在CINSS中, 加密密鑰就是用戶登錄密碼

相關(guān)的hash值, 只被用戶、該節(jié)點(diǎn)認(rèn)證成功的認(rèn)證Agent、控制中心所擁有。 在認(rèn)證Agent 接收到該

加密信息后, 利用加密密鑰響應(yīng)。 這和我們前面論述的認(rèn)證Agent六種認(rèn)證狀態(tài)聯(lián)系起來, 在未認(rèn)

證成功前, 認(rèn)證Agent不可能真正擁有加密密鑰, 即使在自動認(rèn)證過程中所試用的加密密鑰也是未

被驗(yàn)證的。 因此, 未認(rèn)證成功的認(rèn)證Agent不可能正確地響應(yīng), 這滿足網(wǎng)絡(luò)通信的安全性要求。 正

是基于這種考慮, 我們要求未認(rèn)證成功的認(rèn)證Agent阻塞所有的數(shù)據(jù)包, 包括ARP包, 使其“看起

來”是一個死點(diǎn)。 但這又產(chǎn)生一個新問題, 因?yàn)锳RP包被阻塞, 認(rèn)證Agent無法進(jìn)行認(rèn)證。 我們在

前面定義的控制代碼負(fù)責(zé)暫時(shí)放行正在認(rèn)證狀態(tài)時(shí)的認(rèn)證數(shù)據(jù)包, 一旦認(rèn)證結(jié)束, 重新阻塞所有

的數(shù)據(jù)包。 在正在認(rèn)證的過程中, 若該IP被探測, 此時(shí)認(rèn)證Agent尚未認(rèn)證結(jié)束, 這樣就會導(dǎo)致其

被誤認(rèn)為非控節(jié)點(diǎn)。 因此, 通過兩次SendARP的使用可以解決該問題, CINSS固定地設(shè)置認(rèn)證持續(xù)

時(shí)間為5秒, 這在高寬帶的CIN中已經(jīng)是非常久的時(shí)間, 設(shè)置兩次認(rèn)證間隔時(shí)間必須大于60秒, 設(shè)

置Scanner與Spy等待響應(yīng)的時(shí)間為10秒。 若在第一次SemdARP時(shí)探測某IP是活動節(jié)點(diǎn), 其間該

節(jié)點(diǎn)的認(rèn)證Agent認(rèn)證成功, 則能正確響應(yīng), 若認(rèn)證失敗, 則節(jié)點(diǎn)的ARP包被阻塞, 第二次SendARP

必然失敗, 這樣該節(jié)點(diǎn)不會被認(rèn)為是非控節(jié)點(diǎn)。 現(xiàn)在只剩下最后一個問題:在探測到非控節(jié)點(diǎn)后,

如何對其進(jìn)行懲罰, 我們利用ARP欺騙方法實(shí)現(xiàn)之。


上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識,學(xué)習(xí)了安全知識,幾乎可以讓你免費(fèi)電腦中毒的煩擾。