本發(fā)明屬于計(jì)算機(jī)IP地址管理技術(shù)領(lǐng)域,具體涉及一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的方法及系統(tǒng)。
背景技術(shù):
目前子網(wǎng)內(nèi)IPv4地址的獲取方式通常有兩種,通過DHCP服務(wù)器或者手動(dòng)配置,經(jīng)常會(huì)出現(xiàn)設(shè)備IP地址相同的情況,導(dǎo)致設(shè)備不能正常聯(lián)網(wǎng)工作,如果IP沖突的設(shè)備是比較重要的服務(wù)器,那么造成的后果是不堪設(shè)想的。
Windows設(shè)備能夠感知是否有設(shè)備IP與自己IP沖突,但是僅僅感知有設(shè)備與自己IP沖突,而不能感知到網(wǎng)內(nèi)其他設(shè)備之間的IP沖突。
目前很多企業(yè),工廠,公司都有IP沖突的現(xiàn)象,造成了很多問題,因?yàn)椴荒芗皶r(shí)發(fā)現(xiàn),導(dǎo)致問題出現(xiàn)后,帶來的影響比較嚴(yán)重。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的方法和系統(tǒng),其可以實(shí)現(xiàn)對(duì)重復(fù)IP地址的告警和及時(shí)處理。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的方法,其特征在于,所述方法包括:
發(fā)送ARP請(qǐng)求報(bào)文,依次探測(cè)子網(wǎng)內(nèi)所有的IP,得到IP-MAC關(guān)系表,其中,在所述IP-MAC關(guān)系表中,IP與MAC一一對(duì)應(yīng);
監(jiān)聽子網(wǎng)內(nèi)的ARP報(bào)文,根據(jù)接收到的ARP報(bào)文中的源IP在所述IP-MAC關(guān)系表中查找與之對(duì)應(yīng)的MAC;
判定IP-MAC關(guān)系表中的MAC與ARP報(bào)文中的MAC不同,根據(jù)所述源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送,若得到多個(gè)ARP響應(yīng),則觸發(fā)告警。
優(yōu)選地,在得到所述IP-MAC關(guān)系表中,若某個(gè)IP收到多個(gè)ARP響應(yīng),則觸發(fā)告警。
優(yōu)選地,若根據(jù)所述源IP在所述IP-MAC關(guān)系表中無法查到對(duì)應(yīng)的MAC或?qū)?yīng)的IP,則將ARP報(bào)文中的源IP和MAC添加到所述IP-MAC關(guān)系表中。
優(yōu)選地,在所述根據(jù)所述源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送后,若得到單個(gè)ARP響應(yīng),則更新所述源IP在所述IP-MAC關(guān)系表中的對(duì)應(yīng)信息。
優(yōu)選地,接收所述告警后,判定IP存在沖突,更改沖突設(shè)備的IP地址。
本發(fā)明還提供了一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的系統(tǒng),其特征在于,所述系統(tǒng)包括:
生成模塊,用于發(fā)送ARP請(qǐng)求報(bào)文,依次探測(cè)子網(wǎng)內(nèi)所有的IP,得到IP-MAC關(guān)系表,其中,在所述IP-MAC關(guān)系表中,IP與MAC一一對(duì)應(yīng);
對(duì)比模塊,用于監(jiān)聽子網(wǎng)內(nèi)的ARP報(bào)文,根據(jù)接收到的ARP報(bào)文中的源IP在所述IP-MAC關(guān)系表中查找與之對(duì)應(yīng)的MAC;
處理模塊,用于判定IP-MAC關(guān)系表中的MAC與ARP報(bào)文中的MAC不同,根據(jù)所述源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送,若得到多個(gè)ARP響應(yīng),則觸發(fā)告警。
優(yōu)選地,所述處理模塊還用于:在得到所述IP-MAC關(guān)系表中,若某個(gè)IP收到多個(gè)ARP響應(yīng),則觸發(fā)告警。
優(yōu)選地,所述系統(tǒng)還包括更新模塊,用于若根據(jù)所述源IP在所述IP-MAC關(guān)系表中無法查到對(duì)應(yīng)的MAC或?qū)?yīng)的IP,則將ARP報(bào)文中的源IP和MAC添加到所述IP-MAC關(guān)系表中。
優(yōu)選地,所述更新模塊還用于在所述根據(jù)所述源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送后,若得到單個(gè)ARP響應(yīng),則更新所述源IP在所述IP-MAC關(guān)系表中的對(duì)應(yīng)信息。
優(yōu)選地,所述系統(tǒng)還包括IP更改模塊,用于接收所述告警后,判定IP存在沖突,更改沖突設(shè)備的IP地址。
本發(fā)明提供的一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的方法及系統(tǒng),與現(xiàn)有技術(shù)相比,依次探測(cè)子網(wǎng)并形成IP-MAC關(guān)系表,可以將子網(wǎng)內(nèi)的IP與MAC進(jìn)行全面的統(tǒng)計(jì),更好的判斷是否有IP沖突的情況;被動(dòng)監(jiān)聽子網(wǎng)中的ARP報(bào)文,并根據(jù)所包含的源IP查找是否有對(duì)應(yīng)的MAC相對(duì)應(yīng),根據(jù)查找結(jié)果判斷是否需要更新關(guān)系表或者觸發(fā)告警,更改IP沖突設(shè)備的IP地址,從而實(shí)現(xiàn)子網(wǎng)中主動(dòng)和被動(dòng)監(jiān)聽是否有IP地址相沖突,實(shí)時(shí)解決重復(fù)IP的問題。
附圖說明
圖1為本發(fā)明一優(yōu)選實(shí)施例的方法流程示意圖;
圖2為本發(fā)明另一優(yōu)選實(shí)施例的系統(tǒng)結(jié)構(gòu)示意圖;
圖3為本發(fā)明一優(yōu)選實(shí)施例的方法另一流程示意圖。
具體實(shí)施方式
為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明的技術(shù)方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。
參照?qǐng)D1所示,在本發(fā)明一優(yōu)選的實(shí)施例中提供了一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的方法,該方法包括:
S110、發(fā)送ARP請(qǐng)求報(bào)文,依次探測(cè)子網(wǎng)內(nèi)所有的IP,得到IP-MAC關(guān)系表,其中,在IP-MAC關(guān)系表中,IP與MAC一一對(duì)應(yīng)。
由于在子網(wǎng)中同一個(gè)IP可能會(huì)對(duì)應(yīng)不同的MAC地址,即不同的設(shè)備共用同一個(gè)IP地址。此種情況下,IP地址的沖突往往導(dǎo)致上網(wǎng)障礙,在更改IP時(shí)也是沒有明確的目的進(jìn)行更改,導(dǎo)致更改后的IP會(huì)與子網(wǎng)中的其他設(shè)備的IP相沖突。參照?qǐng)D3所示,在依次探測(cè)子網(wǎng)中所有的IP后,在IP-MAC關(guān)系表中,同一個(gè)IP對(duì)應(yīng)不同的MAC地址,此時(shí)即觸發(fā)沖突告警,提示IP地址存在沖突。
可選的,當(dāng)IP地址存在沖突時(shí),根據(jù)管理員預(yù)先設(shè)置的沖突處理規(guī)則,更改沖突設(shè)備的IP地址??梢詫?shí)現(xiàn)IP沖突的自動(dòng)解決,提高更改IP的效率。
可選的,當(dāng)IP地址存在沖突時(shí),通知管理員,管理員根據(jù)判斷,更改沖突設(shè)備的IP地址。有利于管理員及時(shí)了解子網(wǎng)中IP地址的分布情況,同時(shí)提高正確效率。
通過遍歷子網(wǎng)中的所有IP地址,可以全面的維護(hù)IP-MAC關(guān)系表,對(duì)子網(wǎng)中的IP沖突采取針對(duì)性的沖突解決機(jī)制。
S120、監(jiān)聽子網(wǎng)內(nèi)的ARP報(bào)文,根據(jù)接收到的ARP報(bào)文中的源IP在IP-MAC關(guān)系表中查找與之對(duì)應(yīng)的MAC。
在步驟S110中生成的IP-MAC關(guān)系表中,IP與MAC之間是一一對(duì)應(yīng)的關(guān)系。由于關(guān)系表是相對(duì)固定的,而子網(wǎng)中的設(shè)備IP由于自動(dòng)選擇IP或者用戶的設(shè)置會(huì)發(fā)生變化,因此,在生成IP-MAC關(guān)系表后,轉(zhuǎn)化為被動(dòng)監(jiān)聽狀態(tài)。
接收到的ARP報(bào)文中包括該ARP報(bào)文的源IP和對(duì)應(yīng)的MAC地址。取出其中的源IP和MAC,并在關(guān)系表中查找。查找的關(guān)鍵詞可以是源IP,也可以是對(duì)應(yīng)的域名。
若在IP-MAC關(guān)系表中查找的源IP對(duì)應(yīng)的MAC地址與ARP報(bào)文中取得的MAC地址相同,且唯一對(duì)應(yīng),則該子網(wǎng)中沒有發(fā)生IP沖突的情況。
可選的,在IP-MAC關(guān)系表中無法查找到對(duì)應(yīng)的源IP或者找不到MAC地址,該ARP報(bào)文中的源IP和MAC沒有在關(guān)系表中,則將源IP和MAC對(duì)應(yīng)關(guān)系添加到IP-MAC關(guān)系表中,從而更新關(guān)系表。
被動(dòng)監(jiān)聽子網(wǎng)中的ARP報(bào)文,從而判斷是否有IP沖突,可以節(jié)省子網(wǎng)中的資源消耗,在判斷的同時(shí)保持子網(wǎng)內(nèi)網(wǎng)絡(luò)的穩(wěn)定性。
S130、判定IP-MAC關(guān)系表中的MAC與ARP報(bào)文中的MAC不同,根據(jù)源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送,若得到多個(gè)ARP響應(yīng),則觸發(fā)告警。
其中,組裝的ARP請(qǐng)求報(bào)文與其他報(bào)文格式內(nèi)容相同,報(bào)文中的IP為源IP。
在發(fā)送組裝的ARP請(qǐng)求報(bào)文后,若得到多個(gè)ARP響應(yīng),表明該源IP被多個(gè)設(shè)備共用,存在IP沖突,會(huì)觸發(fā)告警,進(jìn)行相應(yīng)的IP沖突處理,使得處理后的IP-MAC關(guān)系表之間的關(guān)系是一一對(duì)應(yīng)關(guān)系。
可選的,若收到單個(gè)ARP響應(yīng),表面IP對(duì)應(yīng)的MAC地址發(fā)送變化,則更新IP-MAC關(guān)系表中的MAC地址,使之與源IP對(duì)應(yīng)。
本發(fā)明實(shí)施例提供的一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的方法,在步驟S110中,依次探測(cè)子網(wǎng)并形成IP-MAC關(guān)系表,可以將子網(wǎng)內(nèi)的IP與MAC進(jìn)行全面的統(tǒng)計(jì),更好的判斷是否有IP沖突的情況。在步驟S120至步驟S130中,被動(dòng)監(jiān)聽子網(wǎng)中的ARP報(bào)文,并根據(jù)所包含的源IP查找是否有對(duì)應(yīng)的MAC相對(duì)應(yīng),根據(jù)查找結(jié)果判斷是否需要更新關(guān)系表或者觸發(fā)告警,更改IP沖突設(shè)備的IP地址,從而實(shí)現(xiàn)子網(wǎng)中主動(dòng)和被動(dòng)監(jiān)聽是否有IP地址相沖突,實(shí)時(shí)解決重復(fù)IP的問題。
參照?qǐng)D2所示,在本發(fā)明的另一優(yōu)選實(shí)施例中提供了一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的系統(tǒng),包括:
生成模塊210,用于發(fā)送ARP請(qǐng)求報(bào)文,依次探測(cè)子網(wǎng)內(nèi)所有的IP,得到IP-MAC關(guān)系表,其中,在所述IP-MAC關(guān)系表中,IP與MAC一一對(duì)應(yīng)。
對(duì)比模塊220,用于監(jiān)聽子網(wǎng)內(nèi)的ARP報(bào)文,根據(jù)接收到的ARP報(bào)文中的源IP在IP-MAC關(guān)系表中查找與之對(duì)應(yīng)的MAC。
處理模塊230,用于判定IP-MAC關(guān)系表中的MAC與ARP報(bào)文中的MAC不同,根據(jù)所述源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送,若得到多個(gè)ARP響應(yīng),則觸發(fā)告警。
在生成模塊210中,若在生成的IP-MAC關(guān)系表中,同一個(gè)IP對(duì)應(yīng)多個(gè)MAC地址,則處理模塊230觸發(fā)告警,IP更改模塊240通知管理員及時(shí)處理或者按照預(yù)定的沖突處理規(guī)則處理,更改沖突設(shè)備的IP,使得IP與MAC之間保持一一對(duì)應(yīng)的關(guān)系。
若根據(jù)源IP在IP-MAC關(guān)系表中無法查到對(duì)應(yīng)的MAC或?qū)?yīng)的IP,則更新模塊250將ARP報(bào)文中的源IP和MAC添加到IP-MAC關(guān)系表中。此外,根據(jù)源IP組裝ARP請(qǐng)求報(bào)文并發(fā)送后,若得到單個(gè)ARP響應(yīng),則更新模塊250也同時(shí)更新源IP在IP-MAC關(guān)系表中的對(duì)應(yīng)信息。
本發(fā)明實(shí)施例提供的一種基于ARP協(xié)議實(shí)時(shí)監(jiān)測(cè)子網(wǎng)內(nèi)IP沖突并實(shí)時(shí)告警的系統(tǒng),生成模塊210依次探測(cè)子網(wǎng)并形成IP-MAC關(guān)系表,可以將子網(wǎng)內(nèi)的IP與MAC進(jìn)行全面的統(tǒng)計(jì),更好的判斷是否有IP沖突的情況。對(duì)比模塊220和處理模塊230被動(dòng)監(jiān)聽子網(wǎng)中的ARP報(bào)文,并根據(jù)所包含的源IP查找是否有對(duì)應(yīng)的MAC相對(duì)應(yīng),根據(jù)查找結(jié)果判斷是否需要更新關(guān)系表或者觸發(fā)告警,更改IP沖突設(shè)備的IP地址,從而實(shí)現(xiàn)子網(wǎng)中主動(dòng)和被動(dòng)監(jiān)聽是否有IP地址相沖突,實(shí)時(shí)解決重復(fù)IP的問題。
可以理解的是,以上實(shí)施方式僅僅是為了說明本發(fā)明的原理而采用的示例性實(shí)施方式,然而本發(fā)明并不局限于此。對(duì)于本領(lǐng)域內(nèi)的普通技術(shù)人員而言,在不脫離本發(fā)明的精神和實(shí)質(zhì)的情況下,可以做出各種變型和改進(jìn),這些變型和改進(jìn)也視為本發(fā)明的保護(hù)范圍。