欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

IP范圍的比較方法和裝置與流程

文檔序號:12491226閱讀:391來源:國知局
IP范圍的比較方法和裝置與流程

本申請涉及計(jì)算機(jī)領(lǐng)域,具體而言,涉及一種IP范圍的比較方法和裝置。



背景技術(shù):

在網(wǎng)站的分析行業(yè)中,包括對日志解析的任務(wù),而在日志解析的過程中,往往會刪除某個(gè)IP地址區(qū)間內(nèi)的日志,則需判斷日志的IP地址是否處于該IP地址區(qū)間內(nèi)。例如判斷IP地址193.168.0.3是否處于IP范圍192.168.0.22~196.168.0.29之間,現(xiàn)有技術(shù)中僅將IP地址中的第一字節(jié)193與IP范圍中格的192和196進(jìn)行比較,并將IP地址中的第四字節(jié)3與IP范圍中22和29進(jìn)行比較,在比較的過程中準(zhǔn)確度差,此時(shí),可能會造成日志錯(cuò)誤刪除,給用戶帶來帶了一定的影響。

針對上述的問題,目前尚未提出有效的解決方案。



技術(shù)實(shí)現(xiàn)要素:

本申請實(shí)施例提供了一種IP范圍的比較方法和裝置,以至少解決現(xiàn)有技術(shù)中由于IP地址范圍查找準(zhǔn)確度較低的技術(shù)問題。

根據(jù)本申請實(shí)施例的一個(gè)方面,提供了一種IP范圍的比較方法,其特征在于,包括:按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組,其中,所述第一數(shù)組的預(yù)設(shè)長度與所述待判斷IP地址中字節(jié)的數(shù)量相等;將所述第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,其中,所述第二數(shù)組中的數(shù)組元素由起始IP地址的字節(jié)組成,所述第三數(shù)組中的數(shù)組元素由終止IP地址的字節(jié)組成;以及根據(jù)比較結(jié)果確定所述待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,所述預(yù)設(shè)IP地址區(qū)間由所述起始IP地址和所述終止IP地址組成。

進(jìn)一步地,按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組包括:依次查找所述待判斷IP地址中相鄰兩個(gè)字節(jié)之間的分隔符,得到多個(gè)分隔符;按照多個(gè)所述分隔符將所述待判斷IP地址進(jìn)行切割,得到多個(gè)所述字節(jié);以及確定多個(gè)所述字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為所述第一數(shù)組,其中,所述預(yù)設(shè)順序?yàn)樽止?jié)在IP地址中的順序。

進(jìn)一步地,所述第二數(shù)組和所述第三數(shù)組的長度均為所述預(yù)設(shè)長度,將所述第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較包括:將第一數(shù)組中數(shù)組元素Ai分別與第二數(shù)組中數(shù)組元素Bi和第三數(shù)組中數(shù)組元素Ci進(jìn)行比較,其中,i依次取1至n,n為所述預(yù)設(shè)長度的取值。

進(jìn)一步地,根據(jù)比較結(jié)果確定待判斷IP地址是否處于所述預(yù)設(shè)IP地址區(qū)間內(nèi)包括:當(dāng)所述比較結(jié)果為數(shù)組元素A1大于數(shù)組元素B1,并且所述數(shù)組元素A1小于數(shù)組元素C1時(shí),確定所述待判斷IP地址處于所述預(yù)設(shè)IP地址區(qū)間內(nèi);以及當(dāng)所述比較結(jié)果為所述數(shù)組元素A1等于所述數(shù)組元素B1,或者所述數(shù)組元素A1等于所述數(shù)組元素C1時(shí),將數(shù)組元素A2分別與數(shù)組元素B2和數(shù)組元素C2進(jìn)行比較,直至比較出數(shù)組元素Aj大于數(shù)組元素Bj,且所述數(shù)組元素Aj小于數(shù)組元素Cj時(shí),確定所述待判斷IP地址處于所述預(yù)設(shè)IP地址區(qū)間內(nèi),其中,j依次取2至n,n為所述預(yù)設(shè)長度的取值。

進(jìn)一步地,在按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組之前,所述方法還包括:接收用戶選取的所述起始IP地址和所述終止IP地址;按照字節(jié)分別對所述起始IP地址和所述終止IP地址進(jìn)行切割,得到所述起始IP地址的多個(gè)字節(jié)和所述終止IP地址的多個(gè)字節(jié);以及確定所述起始IP地址的多個(gè)字節(jié)按照所述預(yù)設(shè)順序組成的數(shù)組為所述第二數(shù)組,并確定所述終止IP地址的多個(gè)字節(jié)按照所述預(yù)設(shè)順序組成的數(shù)組為所述第三數(shù)組。

根據(jù)本申請實(shí)施例的另一方面,還提供了一種IP范圍的比較裝置,其特征在于,包括:第一切割單元,用于按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組,其中,所述第一數(shù)組的預(yù)設(shè)長度與所述待判斷IP地址中字節(jié)的數(shù)量相等;比較單元,用于將所述第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,其中,所述第二數(shù)組中的數(shù)組元素由起始IP地址的字節(jié)組成,所述第三數(shù)組中的數(shù)組元素由終止IP地址的字節(jié)組成;以及第一確定單元,用于根據(jù)比較結(jié)果確定所述待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,所述預(yù)設(shè)IP地址區(qū)間由所述起始IP地址和所述終止IP地址組成。

進(jìn)一步地,所述第一切割單元包括:查找模塊,用于依次查找所述待判斷IP地址中相鄰兩個(gè)字節(jié)之間的分隔符,得到多個(gè)分隔符;切割模塊,用于按照多個(gè)所述分隔符將所述待判斷IP地址進(jìn)行切割,得到多個(gè)所述字節(jié);以及第一確定模塊,用于確定多個(gè)所述字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為所述第一數(shù)組,其中,所述預(yù)設(shè)順序?yàn)樽止?jié)在IP地址中的順序。

進(jìn)一步地,所述第二數(shù)組和所述第三數(shù)組的長度均為所述預(yù)設(shè)長度,所述比較單 元包括:第一比較模塊,用于將第一數(shù)組中數(shù)組元素Ai分別與第二數(shù)組中數(shù)組元素Bi和第三數(shù)組中數(shù)組元素Ci進(jìn)行比較,其中,i依次取1至n,n為所述預(yù)設(shè)長度的取值。

進(jìn)一步地,所述第一確定單元包括:第二確定模塊,用于當(dāng)所述比較結(jié)果為數(shù)組元素A1大于數(shù)組元素B1,并且所述數(shù)組元素A1小于數(shù)組元素C1時(shí),確定所述待判斷IP地址處于所述預(yù)設(shè)IP地址區(qū)間內(nèi);以及第二比較模塊,用于當(dāng)所述比較結(jié)果為所述數(shù)組元素A1等于所述數(shù)組元素B1,或者所述數(shù)組元素A1等于所述數(shù)組元素C1時(shí),將數(shù)組元素A2分別與數(shù)組元素B2和數(shù)組元素C2進(jìn)行比較,直至比較出數(shù)組元素Aj大于數(shù)組元素Bj,且所述數(shù)組元素Aj小于數(shù)組元素Cj時(shí),確定所述待判斷IP地址處于所述預(yù)設(shè)IP地址區(qū)間內(nèi),其中,j依次取2至n,n為所述預(yù)設(shè)長度的取值。

進(jìn)一步地,所述裝置還包括:接收單元,用于在所述第一切割單元按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組之前,接收用戶選取的所述起始IP地址和所述終止IP地址;第二切割單元,用于按照字節(jié)分別對所述起始IP地址和所述終止IP地址進(jìn)行切割,得到所述起始IP地址的多個(gè)字節(jié)和所述終止IP地址的多個(gè)字節(jié);以及第二確定單元,用于確定所述起始IP地址的多個(gè)字節(jié)按照所述預(yù)設(shè)順序組成的數(shù)組為所述第二數(shù)組,并確定所述終止IP地址的多個(gè)字節(jié)按照所述預(yù)設(shè)順序組成的數(shù)組為所述第三數(shù)組。

在本申請實(shí)施例中,采用按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組,其中,所述第一數(shù)組的預(yù)設(shè)長度與所述待判斷IP地址中字節(jié)的數(shù)量相等;將所述第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,其中,所述第二數(shù)組中的數(shù)組元素由起始IP地址的字節(jié)組成,所述第三數(shù)組中的數(shù)組元素由終止IP地址的字節(jié)組成;根據(jù)比較結(jié)果確定所述待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,所述預(yù)設(shè)IP地址區(qū)間由所述起始IP地址和所述終止IP地址組成的方式。通過IP地址中的字節(jié)對待判斷IP地址進(jìn)行切割,并由切割之后的待判斷IP地址的字節(jié)組成第一數(shù)組,并將第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,根據(jù)比較結(jié)果確定IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),相對于現(xiàn)有技術(shù)中IP地址范圍的比較方法中僅比較待判斷IP地址中的第一字節(jié)和最后字節(jié),達(dá)到了準(zhǔn)確判斷IP地址范圍的目的,進(jìn)而解決了現(xiàn)有技術(shù)中由于IP地址范圍查找準(zhǔn)確度較低的技術(shù)問題。

附圖說明

此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申 請的示意性實(shí)施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:

圖1是根據(jù)本申請實(shí)施例的一種IP范圍的比較方法的流程圖;以及

圖2是根據(jù)本申請實(shí)施例的一種IP范圍的比較裝置的示意圖。

具體實(shí)施方式

為了使本技術(shù)領(lǐng)域的人員更好地理解本申請方案,下面將結(jié)合本申請實(shí)施例中的附圖,對本申請實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請一部分的實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請保護(hù)的范圍。

需要說明的是,本申請的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。

根據(jù)本申請實(shí)施例,提供了一種IP范圍的比較方法的方法實(shí)施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。

圖1是根據(jù)本申請實(shí)施例的一種IP范圍的比較方法的流程圖,如圖1所示,該方法包括如下步驟S102至步驟S106:

步驟S102,按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組,其中,第一數(shù)組的預(yù)設(shè)長度與待判斷IP地址中字節(jié)的數(shù)量相等。

具體地,IP地址為IP(Internet Protocol Address)協(xié)議提供的一種統(tǒng)一的地址格式,常見的IP地址分為IPv4和IPv6兩大類,在本申請中的待判斷IP地址可以為IPv4類IP地址,還可以為IPv6類IP地址。在本申請實(shí)施例中,待判斷IP地址以IPv4類IP地址為例對本申請進(jìn)行介紹。

預(yù)設(shè)長度為第一數(shù)組中數(shù)組元素的數(shù)量,也即,在本申請實(shí)施例中,第一數(shù)組的 數(shù)組元素的數(shù)量與待判斷IP地址中字節(jié)的數(shù)量相等。

步驟S104,將第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,其中,第二數(shù)組中的數(shù)組元素由起始IP地址的字節(jié)組成,第三數(shù)組中的數(shù)組元素由終止IP地址的字節(jié)組成。

具體地,在本申請實(shí)施例中,起始IP地址和終止IP地址均以IPv4類IP地址進(jìn)行說明,其中,起始IP地址和終止IP地址中均包括4段字節(jié)。例如,任意一個(gè)IPv4類的IP地址192.168.1.1中的字節(jié)192,168,1,1即組成一個(gè)數(shù)組[192,168,1,1]。

步驟S106,根據(jù)比較結(jié)果確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,預(yù)設(shè)IP地址區(qū)間由起始IP地址和終止IP地址組成。

具體地,通過將第一數(shù)組中的數(shù)組元素與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,即可確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi)。

在本申請實(shí)施例中,通過IP地址中的字節(jié)對待判斷IP地址進(jìn)行切割,并由切割之后的待判斷IP地址的字節(jié)組成第一數(shù)組,并將第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,根據(jù)比較結(jié)果確定IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),相對于現(xiàn)有技術(shù)中IP地址范圍的比較方法中僅比較待判斷IP地址中的第一字節(jié)和最后字節(jié),達(dá)到了準(zhǔn)確判斷IP地址范圍的目的,進(jìn)而解決了現(xiàn)有技術(shù)中由于IP地址范圍查找準(zhǔn)確度較低的技術(shù)問題。

在本申請實(shí)施例中,待判斷IP地址、起始IP地址和終止IP地址分別為用judgeIp、beginIp和endIp表示;第一數(shù)組、第二數(shù)組和第三數(shù)組分別用judgeIpArr,beginIpArr和endIpArr表示。

可選的,按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組包括如下步驟S1021至步驟S1025:

步驟S1021,依次查找待判斷IP地址中相鄰兩個(gè)字節(jié)之間的分隔符,得到多個(gè)分隔符。

步驟S1023,按照多個(gè)分隔符將待判斷IP地址進(jìn)行切割,得到多個(gè)字節(jié)。

步驟S1025,確定多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第一數(shù)組,其中,預(yù)設(shè)順序?yàn)樽止?jié)在IP地址中的順序。

具體地,若待判斷IP地址(judgeIp)為“192.168.1.1”,則依次查找“192”和“168”之間的第一個(gè)分隔符“.”,“168”和“1”之間的第二個(gè)分隔符“.”,以及“1” 和“1”之間的第三個(gè)分隔符“.”,按照第一個(gè)分隔符、第二個(gè)分隔符和第三個(gè)分隔符的順序?qū)P地址為“192.168.1.1”進(jìn)行切割,得到4組數(shù)字(即,judgeIp的多個(gè)字節(jié)),分別為:192,168,1,1,該四段字節(jié)組成的數(shù)組[192,168,1,1],即為第一數(shù)組judgeIpArr,其中,在judgeIpArr[192,168,1,1]中,192,168,1,1又可以稱為數(shù)組元素。

需要說明的是,多個(gè)字節(jié)192,168,1,1在待判斷IP地址中的順序也即為第一數(shù)組中多個(gè)數(shù)組元素192,168,1,1的順序。

可選的,第二數(shù)組和第三數(shù)組的長度均為預(yù)設(shè)長度,將第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較包括步驟S1041:

步驟S1041,將第一數(shù)組中數(shù)組元素Ai分別與第二數(shù)組中數(shù)組元素Bi和第三數(shù)組中數(shù)組元素Ci進(jìn)行比較,其中,i依次取1至n,n為預(yù)設(shè)長度的取值。

具體地,若待對待判斷IP地址進(jìn)行切割之后,得到的第一數(shù)組(judgeIpArr)為[A1,A2,…,Ai,…,An];對起始IP地址(beginIp)進(jìn)行切割之后,得到的第二數(shù)組beginIpArr為[B1,B2,…,Bi,…,Bn];對終止IP地址(endIp)進(jìn)行切割之后,得到的第三數(shù)組(endIpArr)為[C1,C2,…,Ci,…,Cn]。將Ai分別與Bi和Ci進(jìn)行比較,根據(jù)比較結(jié)果確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi)。

可選的,根據(jù)比較結(jié)果確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi)包括如下步驟S1061至步驟S1063:

步驟S1061,當(dāng)比較結(jié)果為數(shù)組元素A1大于數(shù)組元素B1,并且數(shù)組元素A1小于數(shù)組元素C1時(shí),確定待判斷IP地址處于預(yù)設(shè)IP地址區(qū)間內(nèi)。

步驟S1063,當(dāng)比較結(jié)果為數(shù)組元素A1等于數(shù)組元素B1,或者數(shù)組元素A1等于數(shù)組元素C1時(shí),將數(shù)組元素A2分別與數(shù)組元素B2和數(shù)組元素C2進(jìn)行比較,直至比較出數(shù)組元素Aj大于數(shù)組元素Bj,并且數(shù)組元素Aj小于數(shù)組元素Cj時(shí),確定待判斷IP地址處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,j依次取2至n,n為預(yù)設(shè)長度的取值。

具體地,對于judgeIp范圍的確定,通過以下三種情況進(jìn)行說明。

情況一:

若預(yù)設(shè)IP地址區(qū)間選取為192.168.0.1~196.201.0.3,也可表示為beginIp~endIp,其中,192.168.0.1為起始IP地址beginIp,196.201.0.3為終止IP地址endIp;選取待判斷IP地址judgeIp為193.168.0.2。

將beginIp,endIp和judgeIp分別按著分隔符“.”進(jìn)行切割得到三個(gè)預(yù)設(shè)長度都為4的數(shù)組,即第一數(shù)組judgeIpArr、第二數(shù)組beginIpArr和第三數(shù)組endIpArr,分別表示為:

beginIpArr[192,168,0,1];endIpArr[196,201,0,3];judgeIpArr[193,168,0,2]。

依次取數(shù)組judgeIpArr中的數(shù)組元素與數(shù)組beginIpArr,endIpArr中相對應(yīng)的數(shù)組元素進(jìn)行比較,具體比較步驟為:

步驟S1,將judgeIpArr中的數(shù)組元素A1“193”依次與beginIpArr中的數(shù)組元素B1“192”和endIpArr中的數(shù)組元素C1“196”進(jìn)行比較,通過比較可知,judgeIpArr中的數(shù)組元素A1“193”大于judgeIpArr中的數(shù)組元素B1“192”,并且小于endIpArr中的數(shù)組元素C1“196”,則表示judgeIp在beginIp~endIp范圍內(nèi)。此時(shí),即可確定judgeIp的處于預(yù)設(shè)IP取值區(qū)間內(nèi),不必再進(jìn)行數(shù)組元素A2、B2和C2之間的比較。

情況二:

若預(yù)設(shè)IP地址區(qū)間選取為193.168.0.1~196.201.0.3,其中,193.168.0.1為起始IP地址beginIp,196.201.0.3為終止IP地址endIp;同樣選取待判斷IP地址judgeIp為193.168.0.2。

將beginIp,endIp和judgeIp分別按著分隔符“.”進(jìn)行切割得到三個(gè)預(yù)設(shè)長度都為4的數(shù)組,即第一數(shù)組judgeIpArr、第二數(shù)組beginIpArr和第三數(shù)組endIpArr,分別表示為:

beginIpArr[193,168,0,1];endIpArr[196,201,0,3];judgeIpArr[193,168,0,2]。

依次取數(shù)組judgeIpArr中的數(shù)組元素與數(shù)組beginIpArr,endIpArr中相對應(yīng)的數(shù)組元素進(jìn)行比較,具體比較步驟為:

步驟S3,將judgeIpArr中的數(shù)組元素A1“193”依次與beginIpArr中的數(shù)組元素B1“193”和endIpArr中的數(shù)組元素C1“196”進(jìn)行比較,通過比較可知,judgeIpArr中的數(shù)組元素A1“193”等于judgeIpArr中的數(shù)組元素B1“193”,此時(shí)需執(zhí)行步驟S5。

步驟S5,將judgeIpArr中的數(shù)組元素A2“168”依次與beginIpArr中的數(shù)組元素B2“168”和endIpArr中的數(shù)組元素C2“201”進(jìn)行比較,通過比較可知,judgeIpArr中的數(shù)組元素A2“168”等于judgeIpArr中的數(shù)組元素B2“168”,此時(shí)需執(zhí)行步驟S7。

步驟S7,將judgeIpArr中的數(shù)組元素A3“0”依次與beginIpArr中的數(shù)組元素B3“0”和endIpArr中的數(shù)組元素C3“0”進(jìn)行比較,通過比較可知,judgeIpArr中的數(shù)組元素A3“0”等于beginIpArr中的數(shù)組元素B3“0”,并且等于endIpArr中的數(shù)組元素C3“0”,此時(shí)需執(zhí)行步驟S9。

步驟S9,將judgeIpArr中的數(shù)組元素A4“2”依次與beginIpArr中的數(shù)組元素B4“1”和endIpArr中的數(shù)組元素C4“3”進(jìn)行比較,通過比較可知,judgeIpArr中的數(shù)組元素A4“2”大于beginIpArr中的數(shù)組元素B4“1”,并且小于endIpArr中的數(shù)組元素C4“3”,此時(shí)確定judgeIp的處于預(yù)設(shè)IP取值區(qū)間內(nèi)。

情況三:

若預(yù)設(shè)IP地址區(qū)間選取為194.168.0.1~196.201.0.3,也可表示為beginIp~endIp,其中,194.168.0.1為起始IP地址beginIp,196.201.0.3為終止IP地址endIp;選取待判斷IP地址judgeIp為193.168.0.2。

將beginIp,endIp和judgeIp分別按著分隔符“.”進(jìn)行切割得到三個(gè)預(yù)設(shè)長度都為4的數(shù)組,即第一數(shù)組judgeIpArr、第二數(shù)組beginIpArr和第三數(shù)組endIpArr,分別表示為:

beginIpArr[194,168,0,1];endIpArr[196,201,0,3];judgeIpArr[193,168,0,2]。

依次取數(shù)組judgeIpArr中的數(shù)組元素與數(shù)組beginIpArr,endIpArr中相對應(yīng)的數(shù)組元素進(jìn)行比較,具體比較步驟為:

步驟S11,將judgeIpArr中的數(shù)組元素A1“193”依次與beginIpArr中的數(shù)組元素B1“194”和endIpArr中的數(shù)組元素C1“196”進(jìn)行比較,通過比較可知,judgeIpArr中的數(shù)組元素A1“193”小于judgeIpArr中的數(shù)組元素B1“194”,并且小于endIpArr中的數(shù)組元素C1“196”,則表示judgeIp不在在beginIp~endIp范圍內(nèi)。

可選的,在按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組之前,IP范圍的比較方法還包括如下步驟S13至步驟S17:

步驟S13,接收用戶選取的起始IP地址和終止IP地址。

步驟S15,按照字節(jié)分別對起始IP地址和終止IP地址進(jìn)行切割,得到起始IP地址的多個(gè)字節(jié)和終止IP地址的多個(gè)字節(jié)。

步驟S17,確定起始IP地址的多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第二數(shù)組,并確定終止IP地址的多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第三數(shù)組。

具體地,用戶可根據(jù)實(shí)際需要在系統(tǒng)中輸入預(yù)設(shè)IP地址區(qū)間,即在系統(tǒng)中輸入起始IP地址和終止IP地址。具體對起始IP地址進(jìn)行切割,得到第二數(shù)組的方法,以及對終止IP地址進(jìn)行切割,得到第三數(shù)組的方法同步驟S1021至步驟S1025中所說明的對待判斷IP地址進(jìn)行切割,得到第一數(shù)組的方法相同,此處不再贅述。

本申請實(shí)施例還提供了一種IP范圍的比較裝置,該比較裝置主要用于執(zhí)行本申請實(shí)施例上述內(nèi)容所提供的IP范圍的比較方法,以下對本申請實(shí)施例送提供的IP范圍的比較裝置做具體介紹。

圖2是根據(jù)本申請實(shí)施例的一種IP范圍的比較裝置的示意圖,如圖2所示,該IP范圍的比較裝置主要包括第一切割單元10、比較單元20和第一確定單元30,其中:

第一切割單元10,用于按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組,其中,第一數(shù)組的預(yù)設(shè)長度與待判斷IP地址中字節(jié)的數(shù)量相等。

具體地,IP地址為IP(Internet Protocol Address)協(xié)議提供的一種統(tǒng)一的地址格式,常見的IP地址分為IPv4和IPv6兩大類,在本申請中的待判斷IP地址可以為IPv4類IP地址,還可以為IPv6類IP地址。在本申請實(shí)施例中,待判斷IP地址以IPv4類IP地址為例對本申請進(jìn)行介紹。

預(yù)設(shè)長度為第一數(shù)組中數(shù)組元素的數(shù)量,也即,在本申請實(shí)施例中,第一數(shù)組的數(shù)組元素的數(shù)量與待判斷IP地址中字節(jié)的數(shù)量相等。

比較單元20,用于將第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,其中,第二數(shù)組中的數(shù)組元素由起始IP地址的字節(jié)組成,第三數(shù)組中的數(shù)組元素由終止IP地址的字節(jié)組成。

具體地,在本申請實(shí)施例中,起始IP地址和終止IP地址均以IPv4類IP地址進(jìn)行說明,其中,起始IP地址和終止IP地址中均包括4段字節(jié)。例如,任意一個(gè)IPv4類的IP地址192.168.1.1中的字節(jié)192,168,1,1即組成一個(gè)數(shù)組[192,168,1,1]。

第一確定單元30,用于根據(jù)比較結(jié)果確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,預(yù)設(shè)IP地址區(qū)間由起始IP地址和終止IP地址組成。

具體地,通過將第一數(shù)組中的數(shù)組元素與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,即可確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi)。

在本申請實(shí)施例中,通過IP地址中的字節(jié)對待判斷IP地址進(jìn)行切割,并由切割之后的待判斷IP地址的字節(jié)組成第一數(shù)組,并將第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,根據(jù)比較結(jié)果確定IP地址是否處 于預(yù)設(shè)IP地址區(qū)間內(nèi),相對于現(xiàn)有技術(shù)中IP地址范圍的比較方法中僅比較待判斷IP地址中的第一字節(jié)和最后字節(jié),達(dá)到了準(zhǔn)確判斷IP地址范圍的目的,進(jìn)而解決了現(xiàn)有技術(shù)中由于IP地址范圍查找準(zhǔn)確度較低的技術(shù)問題。

可選的,第一切割單元包括:查找模塊,用于依次查找待判斷IP地址中相鄰兩個(gè)字節(jié)之間的分隔符,得到多個(gè)分隔符;切割模塊,用于按照多個(gè)分隔符將待判斷IP地址進(jìn)行切割,得到多個(gè)字節(jié);第一確定模塊,用于確定多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第一數(shù)組,其中,預(yù)設(shè)順序?yàn)樽止?jié)在IP地址中的順序。

具體地,通過查找模塊來查找相鄰字節(jié)之間的分隔符,例如查找待判斷IP地址(judgeIp)為“192.168.1.1”的字節(jié)“192”和字節(jié)“168”之間的第一個(gè)分隔符“.”,字節(jié)“168”和字節(jié)“1”之間的第二個(gè)分隔符“.”,以及字節(jié)“1”和字節(jié)“1”之間的第三個(gè)分隔符“.”。通過切割模塊按照查找到的分隔符對IP地址為“192.168.1.1”進(jìn)行切割,得到j(luò)udgeIp的多個(gè)字節(jié),分別為:192,168,1,1,該四段字節(jié)組成第一數(shù)組judgeIpArr[192,168,1,1]。

可選的,第二數(shù)組和第三數(shù)組的長度均為預(yù)設(shè)長度,比較單元包括:第一比較模塊,用于將第一數(shù)組中數(shù)組元素Ai分別與第二數(shù)組中數(shù)組元素Bi和第三數(shù)組中數(shù)組元素Ci進(jìn)行比較,其中,i依次取1至n,n為預(yù)設(shè)長度的取值。

具體地,若待判斷IP地址進(jìn)行切割之后,得到的第一數(shù)組(judgeIpArr)為[A1,A2,…,Ai,…,An];對起始IP地址(beginIp)進(jìn)行切割之后,得到的第二數(shù)組beginIpArr為[B1,B2,…,Bi,…,Bn];對終止IP地址(endIp)進(jìn)行切割之后,得到的第三數(shù)組(endIpArr)為[C1,C2,…,Ci,…,Cn]。通過將Ai分別與Bi和Ci進(jìn)行比較,根據(jù)比較結(jié)果確定待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi)。

可選的,第一確定單元包括:第二確定模塊,用于當(dāng)比較結(jié)果為數(shù)組元素A1大于數(shù)組元素B1,并且數(shù)組元素A1小于數(shù)組元素C1時(shí),確定待判斷IP地址處于預(yù)設(shè)IP地址區(qū)間內(nèi);第二比較模塊,用于當(dāng)比較結(jié)果為數(shù)組元素A1等于數(shù)組元素B1,或者數(shù)組元素A1等于數(shù)組元素C1時(shí),將數(shù)組元素A2分別與數(shù)組元素B2和數(shù)組元素C2進(jìn)行比較,直至比較出數(shù)組元素Aj大于數(shù)組元素Bj,并且數(shù)組元素Aj小于數(shù)組元素Cj時(shí),確定待判斷IP地址處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,j依次取2至n,n為預(yù)設(shè)長度的取值。

具體地,當(dāng)判斷出數(shù)組元素A1大于數(shù)組元素B1,并且小于數(shù)組元素C1時(shí),通過第二確定模塊即可確定待判斷IP地址處于預(yù)設(shè)IP地址區(qū)間內(nèi)。當(dāng)判斷出數(shù)組元素A1小于數(shù)組元素B1時(shí),通過第二確定模塊即可確定待判斷IP地址未處于預(yù)設(shè)IP地址區(qū) 間內(nèi)。若判斷出數(shù)組元素A1等于數(shù)組元素B1,或者判斷出數(shù)組元素A1等于數(shù)組元素C1時(shí),通過第二比較模塊再繼續(xù)將數(shù)組元素A2分別與數(shù)組元素B2和數(shù)組元素C2進(jìn)行比較,直至比較出數(shù)組元素Aj大于數(shù)組元素Bj。

可選的,本申請?zhí)峁┑腎P范圍的比較裝置還包括:接收單元,用于在第一切割單元按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組之前,接收用戶選取的起始IP地址和終止IP地址;第二切割單元,用于按照字節(jié)分別對起始IP地址和終止IP地址進(jìn)行切割,得到起始IP地址的多個(gè)字節(jié)和終止IP地址的多個(gè)字節(jié);第二確定單元,用于確定起始IP地址的多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第二數(shù)組,并確定終止IP地址的多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第三數(shù)組。

具體地,通過接收單元接收用戶輸入的預(yù)設(shè)IP地址區(qū)間,即在系統(tǒng)中輸入的起始IP地址和終止IP地址。通過第二切割單元對起始IP地址和終止IP地址進(jìn)行切割,得到起始IP地址的多個(gè)字節(jié)和終止IP地址的多個(gè)字節(jié)。通過第二確定單元確定起始IP地址的多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第二數(shù)組,并通過第二確定單元確定終止IP地址的多個(gè)字節(jié)按照預(yù)設(shè)順序組成的數(shù)組為第三數(shù)組。

所述網(wǎng)頁中指標(biāo)的分類裝置包括處理器和存儲器,上述第一切割單元、比較單元和第一確定單元等均作為程序單元存儲在存儲器中,由處理器執(zhí)行存儲在存儲器中的上述程序單元來實(shí)現(xiàn)相應(yīng)的功能。

處理器中包含內(nèi)核,由內(nèi)核去存儲器中調(diào)取相應(yīng)的程序單元。內(nèi)核可以設(shè)置一個(gè)或以上,通過調(diào)整內(nèi)核參數(shù)準(zhǔn)確判斷IP地址范圍,進(jìn)而解決了現(xiàn)有技術(shù)中由于IP地址范圍查找準(zhǔn)確度較低的技術(shù)問題。

存儲器可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM),存儲器包括至少一個(gè)存儲芯片。

本申請還提供了一種計(jì)算機(jī)程序產(chǎn)品,當(dāng)在數(shù)據(jù)處理設(shè)備上執(zhí)行時(shí),適于執(zhí)行初始化有如下方法步驟的程序代碼:按照字節(jié)對待判斷IP地址進(jìn)行切割,得到預(yù)設(shè)長度的第一數(shù)組,其中,所述第一數(shù)組的預(yù)設(shè)長度與所述待判斷IP地址中字節(jié)的數(shù)量相等;將所述第一數(shù)組中的數(shù)組元素依次與第二數(shù)組中的數(shù)組元素和第三數(shù)組中的數(shù)組元素進(jìn)行比較,其中,所述第二數(shù)組中的數(shù)組元素由起始IP地址的字節(jié)組成,所述第三數(shù)組中的數(shù)組元素由終止IP地址的字節(jié)組成;根據(jù)比較結(jié)果確定所述待判斷IP地址是否處于預(yù)設(shè)IP地址區(qū)間內(nèi),其中,所述預(yù)設(shè)IP地址區(qū)間由所述起始IP地址和所述終止IP地址組成。

上述本申請實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。

在本申請的上述實(shí)施例中,對各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。

在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。

另外,在本申請各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。

所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機(jī)存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。

以上所述僅是本申請的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本申請?jiān)淼那疤嵯?,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本申請的保護(hù)范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
中卫市| 桦川县| 清河县| 台安县| 龙川县| 酒泉市| 和硕县| 准格尔旗| 麻城市| 天峨县| 晴隆县| 扎鲁特旗| 高台县| 合阳县| 通州区| 荥阳市| 思茅市| 来宾市| 武城县| 保德县| 长子县| 隆德县| 苏尼特左旗| 民县| 新晃| 合江县| 皋兰县| 北宁市| 武强县| 高密市| 佳木斯市| 台州市| 涡阳县| 奉节县| 福泉市| 新源县| 洪江市| 乃东县| 密山市| 云霄县| 合水县|