一種外部訪問控制方法、網(wǎng)關(guān)及dns服務(wù)器的制造方法【專利摘要】本發(fā)明提供一種外部訪問控制方法、網(wǎng)關(guān)及DNS服務(wù)器,用以接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置并判斷網(wǎng)絡(luò)訪問受限對象的類型;當(dāng)類型為IP地址時,生成與IP地址相對應(yīng)的IP數(shù)據(jù)包過濾規(guī)則;當(dāng)類型為域名時,生成與域名相對應(yīng)的IP數(shù)據(jù)包過濾規(guī)則,并在網(wǎng)關(guān)的本地緩存中或者DNS服務(wù)器中查找與域名相對應(yīng)的IP地址,并根據(jù)查找結(jié)果生成與IP地址相對應(yīng)的IP數(shù)據(jù)包過濾規(guī)則。本發(fā)明在網(wǎng)關(guān)部分分別針對不同的網(wǎng)關(guān)實現(xiàn)網(wǎng)絡(luò)訪問受限對象的域名和IP地址的同步控制,保證控制的有效性、全面性、以及靈活性?!緦@f明】—種外部訪問控制方法、網(wǎng)關(guān)及DNS服務(wù)器【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,特別是涉及一種外部訪問控制方法、網(wǎng)關(guān)及DNS服務(wù)器。【
背景技術(shù):
】[0002]URL,也被稱為網(wǎng)頁地址,是因特網(wǎng)上標(biāo)準(zhǔn)的資源地址,用于完整地描述Internet上網(wǎng)頁和其他資源的地址的一種標(biāo)識方法。Internet上的每一個網(wǎng)頁都具有一個唯一的URL地址名稱標(biāo)識,通常稱之為URL地址,這種地址可以是本地磁盤,也可以是局域網(wǎng)上的某一臺計算機,更多的是Internet上的站點。簡單得說,URL就是Web地址,俗稱“網(wǎng)址”。[0003]URL過濾是現(xiàn)在防火墻的一個重要的訪問控制方法,URL控制基本限制在域名級另IJ。這樣帶來的問題就是,在訪問前先使用IP地址解析工具解析出IP地址后再用IP地址訪問,這樣URL域名過濾就會失效,不能同時對域名和IP地址進行過濾。其二,即使域名限制成立,但等URL重組完,再識別,再強行斷開連接,對系統(tǒng),包括客戶端、服務(wù)器和防火墻的資源都是很大的一種浪費。[0004]針對URL過濾在技術(shù)上的缺陷,出現(xiàn)了DNS過濾。DNS過濾就是在域名解析時就進行限制,客戶端發(fā)來的域名解析請求包中包含有域名,可以提取出來進行分析判斷。一般域名請求使用的是UDP(UserDatagramProtocol,用戶數(shù)據(jù)報協(xié)議)包,UDP包中包含了域名信息,不需要通過重組來分離域名信息。DNS過濾雖然可以對域名對應(yīng)的所有服務(wù)進行全面的限制,沒有IP訪問的漏洞,但DNS過濾不能做到像URL過濾那樣,可以將過濾限制到文件級別的粒度。而且,DNS過濾是在DNS服務(wù)器上運行的,這點若在大型網(wǎng)絡(luò)中進行配置是極為不靈活的。在大型社區(qū)網(wǎng)絡(luò)中,多臺網(wǎng)關(guān),即客戶端,對應(yīng)一臺DNS服務(wù)器,如果在DNS服務(wù)器上進行DNS過濾,必然會影響到多臺客戶端,即一條DNS過濾規(guī)則會對所有的客戶端生效,若要對不同的客戶端進行分別的訪問控制,那在DNS服務(wù)器上就無法實現(xiàn)?!?br/>發(fā)明內(nèi)容】[0005]鑒于以上所述現(xiàn)有技術(shù)的缺點,本發(fā)明的目的在于提供一種外部訪問控制方法、網(wǎng)關(guān)、及DNS服務(wù)器,用于解決現(xiàn)有技術(shù)中不能有效的分別爭對不同的網(wǎng)關(guān)同時進行其網(wǎng)絡(luò)訪問限制對象的域名和IP地址的訪問控制的問題。[0006]為實現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種外部訪問控制方法,一種外部訪問控制方法,包括如下步驟:接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置;判斷所述網(wǎng)絡(luò)訪問受限對象的類型;當(dāng)所述類型為IP地址時,生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;當(dāng)所述類型為域名時,生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,并查找本地緩存中是否存在與所述域名相對應(yīng)的IP地址,若存在,提取所述IP地址,生成與所述本地緩存中提取的IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則;若不存在,執(zhí)行以下步驟:與預(yù)設(shè)的DNS服務(wù)器進行一次正常的報文交互,獲取第一交互時間;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文,用以查詢與所述域名相對應(yīng)的IP地址;獲取所述DNS服務(wù)器反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器交互的第二交互時間,當(dāng)所述第二交互時間小于所述第一交互時間時,丟棄所述DNS響應(yīng)報文;當(dāng)所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址,將所述IP地址保存至所述本地緩存中,且生成與從所述DNS響應(yīng)報文中提取的所述IP地址相對應(yīng)的第四IP數(shù)據(jù)包過濾規(guī)則。[0007]可選的,所述外部訪問控制方法還包括設(shè)置向所述DNS服務(wù)器發(fā)送所述DNS查詢報文的次數(shù)閾值;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文后,記錄所述DNS查詢報文發(fā)送次數(shù);當(dāng)由于所述第二交互時間小于所述第一交互時間而丟棄所述DNS響應(yīng)報文后,判斷所述DNS查詢報文發(fā)送次數(shù)是否大于所述次數(shù)閾值,當(dāng)判斷結(jié)果為是時,返回查詢失敗信息,不對所述域名對應(yīng)的所述IP地址進行過濾;當(dāng)判斷結(jié)果為否時,重新向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文。[0008]本發(fā)明還提供一種網(wǎng)關(guān),包括:過濾對象配置模塊,用以接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置;過濾對象類型判斷模塊,用以判斷接收到的所述網(wǎng)絡(luò)訪問受限對象的類型;過濾規(guī)則生成模塊,與所述過濾對象類型判斷模塊連接,當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址時,生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為域名時,生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,并查找與所述域名相對應(yīng)的IP地址,根據(jù)查找結(jié)果生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則;IP地址查詢模塊,當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為域名時,查找本地緩存中是否存在與所述域名相對應(yīng)的IP地址,若是,向所述過濾規(guī)則生成模塊返回所述IP地址;若否,與預(yù)設(shè)的DNS服務(wù)器進行一次正常的報文交互,獲取第一交互時間;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文,用以查詢與所述域名相對應(yīng)的IP地址;獲取所述DNS服務(wù)器反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器交互的第二交互時間,當(dāng)所述第二交互時間小于所述第一交互時間時,丟棄所述DNS響應(yīng)報文;當(dāng)所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址,將所述IP地址保存至所述本地緩存中,并將所述IP地址向所述過濾規(guī)則生成模塊進行反饋。[0009]可選的,所述IP地址查詢模塊還包括查詢次數(shù)閾值設(shè)定模塊,用以設(shè)置向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文的次數(shù)閾值;所述IP地址查詢模塊還包括查詢次數(shù)計數(shù)模塊,用以當(dāng)向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文時,自動加一進行發(fā)送次數(shù)的累計;所述IP地址查詢模塊還包括查詢次數(shù)判斷模塊,用以根據(jù)所述查詢次數(shù)計數(shù)模塊的記錄結(jié)果判斷所述DNS查詢報文發(fā)送次數(shù)是否大于所述次數(shù)閾值,當(dāng)判斷結(jié)果為是時,返回查詢失敗信息,不對所述域名對應(yīng)的所述IP地址進行過濾;當(dāng)判斷結(jié)果為否時,重新向所述DNS服務(wù)器發(fā)送所述DNS查詢報文。[0010]本發(fā)明還提供一種DNS服務(wù)器,包括:IP地址查找模塊,用以根據(jù)接收到的攜帶有域名信息的DNS查詢報文查找與所述域名相對應(yīng)的IP地址;報文交互模塊,用以與外部設(shè)備進行正常的報文交互以供計算出第一交互時間,且根據(jù)所述IP地址查找模塊的查找結(jié)果反饋攜帶有所述IP地址信息的DNS響應(yīng)報文并以供計算出第二交互時間;其中,所述第一交互時間及第二交互時間用于供所述外部設(shè)備在所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址并保存至所述外部設(shè)備本地緩存中,且生成與所述IP地址相對應(yīng)的IP數(shù)據(jù)包過濾規(guī)則。[0011]可選的,所述DNS服務(wù)器還包括閾值設(shè)定模塊,用以設(shè)定所述IP地址查找模塊的查找時間閾值,當(dāng)查找時間大于預(yù)設(shè)的所述時間閾值時,查找結(jié)束,并向所述外部設(shè)備反饋查找失敗信息。[0012]如上所述,本發(fā)明的一種外部訪問控制方法、網(wǎng)關(guān)、及DNS服務(wù)器,在網(wǎng)關(guān)部分分別針對不同的網(wǎng)關(guān)實現(xiàn)網(wǎng)絡(luò)訪問受限對象的域名和IP地址的同步控制,保證控制的有效性、全面性、以及靈活性?!緦@綀D】【附圖說明】[0013]圖1顯示為本發(fā)明的一種外部訪問控制方法在一具體實施例中的步驟流程示意圖。[0014]圖2顯示為應(yīng)用本發(fā)明的一種外部訪問控制方法的一具體實施例的系統(tǒng)架構(gòu)示意圖。[0015]圖3顯示為本發(fā)明的一種網(wǎng)關(guān)的IP地址查詢模塊在一具體實施例中的模塊結(jié)構(gòu)示意圖。[0016]圖4顯示為本發(fā)明的一種DNS服務(wù)器在一具體實施例中的模塊結(jié)構(gòu)示意圖。[0017]圖5顯示為本發(fā)明的一種網(wǎng)關(guān)在一具體實施例中的模塊結(jié)構(gòu)示意圖。[0018]元件標(biāo)號說明[0019]I網(wǎng)關(guān)[0020]11過濾對象配置模塊[0021]12過濾對象類型判斷模塊[0022]13過濾規(guī)則生成模塊[0023]14IP地址查詢模塊[0024]141查詢次數(shù)閾值設(shè)定模塊[0025]142查詢次數(shù)計數(shù)模塊[0026]143查詢次數(shù)判斷模塊[0027]2DNS服務(wù)器[0028]21IP地址查找模塊[0029]22報文交互模塊[0030]SlOl?SI12步驟【具體實施方式】[0031]以下由特定的具體實施例說明本發(fā)明的實施方式,熟悉此技術(shù)的人士可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點及功效。本發(fā)明還可以通過另外不同的【具體實施方式】加以實施或應(yīng)用,本說明書中的各項細節(jié)也可以基于不同觀點與應(yīng)用,在沒有背離本發(fā)明的精神下進行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。[0032]請參閱圖1至圖5。須知,本說明書所附圖式所繪示的結(jié)構(gòu)、比例、大小等,均僅用以配合說明書所揭示的內(nèi)容,以供熟悉此技術(shù)的人士了解與閱讀,并非用以限定本發(fā)明可實施的限定條件,故不具技術(shù)上的實質(zhì)意義,任何結(jié)構(gòu)的修飾、比例關(guān)系的改變或大小的調(diào)整,在不影響本發(fā)明所能產(chǎn)生的功效及所能達成的目的下,均應(yīng)仍落在本發(fā)明所揭示的技術(shù)內(nèi)容得能涵蓋的范圍內(nèi)。同時,本說明書中所引用的如“上”、“下”、“左”、“右”、“中間”及“一”等的用語,亦僅為便于敘述的明了,而非用以限定本發(fā)明可實施的范圍,其相對關(guān)系的改變或調(diào)整,在無實質(zhì)變更技術(shù)內(nèi)容下,當(dāng)亦視為本發(fā)明可實施的范疇。[0033]需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖示中僅顯示與本發(fā)明中有關(guān)的組件而非按照實際實施時的組件數(shù)目、形狀及尺寸繪制,其實際實施時各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。[0034]請參閱圖1,顯示為本發(fā)明提供的一種外部訪問控制方法在一具體實施例中的步驟流程示意圖,本發(fā)明中所述外部訪問控制方法可以應(yīng)用于如圖2所示的應(yīng)用本發(fā)明的一種外部訪問控制方法的一具體實施例的系統(tǒng)架構(gòu)中,所述遠程控制終端對所有的網(wǎng)關(guān)進行監(jiān)控和配置,用于向特定的網(wǎng)關(guān)下發(fā)網(wǎng)絡(luò)訪問受限對象,每個網(wǎng)關(guān)都與一預(yù)設(shè)的DNS服務(wù)器通信,所述遠程控制終端例如為電信或移動等運營商提供的遠程控制設(shè)備,又例如為智能手機或者個人電腦等電子設(shè)備。所述遠程控制終端主要用于監(jiān)控網(wǎng)關(guān),按需要下發(fā)相關(guān)配置,例如網(wǎng)絡(luò)訪問受限對象的配置和下發(fā)。所述DNS服務(wù)器即計算機域名系統(tǒng),是由域名解析器和域名服務(wù)器組成的。所述域名服務(wù)器中保存有該網(wǎng)絡(luò)中所有主機的域名和對應(yīng)IP地址,所述域名解析器可以將域名轉(zhuǎn)換為其相對應(yīng)的IP地址。[0035]如圖1中所示,所述外部訪問控制方法,包括如下步驟:[0036]SlOl:接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置;具體的為,接收所述遠程控制終端下發(fā)的URL格式的網(wǎng)絡(luò)訪問受限對象,用以生成URL黑名單。URL(UniformResourceLocator,統(tǒng)一資源定位符)是對可以從互聯(lián)網(wǎng)上得到的資源的位置和訪問方法的一種簡潔的表示,是互聯(lián)網(wǎng)上標(biāo)準(zhǔn)資源的地址?;ヂ?lián)網(wǎng)上的每個文件都有一個唯一的URL,它包含的信息可以指出文件的位置。[0037]S102:判斷所述網(wǎng)絡(luò)訪問受限對象的類型;于本實施例中,所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址和域名。[0038]S103:當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址時,生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;于本實施例中,所述第一IP數(shù)據(jù)包過濾規(guī)則為與所述IP地址相對應(yīng)的iptables規(guī)則,iptables是與Linux內(nèi)核集成的IP信息包過濾工具,它使插入、修改和除去信息包過濾表中的規(guī)則變得容易,可以定制用戶自定義的規(guī)則來滿足用戶的特定需求。所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址時,生成與所述IP地址相對應(yīng)的iptables規(guī)則,用來限制對所述IP地址的訪問。[0039]S104:當(dāng)所述類型為域名時,生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,于本實施例中,所述第二IP數(shù)據(jù)包過濾規(guī)則例如為與所述域名相對應(yīng)的iptables規(guī)則,用來限制對所述域名的訪問。[0040]S105:查找本地緩存中是否存在與所述域名相對應(yīng)的IP地址,若存在,則執(zhí)行步驟S106,即提取所述IP地址,生成與所述本地緩存中提取的IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則;于本實施例中,所述第三IP數(shù)據(jù)包過濾規(guī)則例如為與所述本地緩存中提取的IP地址相對應(yīng)的iptables規(guī)則,若不存在,執(zhí)行以下步驟:[0041]S107:與預(yù)設(shè)的DNS服務(wù)器進行一次正常的報文交互,獲取第一交互時間;所述第一交互時間即與一預(yù)設(shè)的DNS服務(wù)器進行正常交互的正常交互時間。[0042]S108:向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文,用以查詢與所述域名相對應(yīng)的IP地址。[0043]S109:獲取所述DNS服務(wù)器反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器交互的第二交互時間。[0044]SllO:判斷所述第二交互時間是否小于所述第一交互時間;即將向所述DNS服務(wù)器發(fā)送DNS查詢報文到接收所述DNS服務(wù)器的DNS響應(yīng)報文所形成的第二交互時間與所述正常的交互時間進行比較,當(dāng)所述第二交互時間小于所述第一交互時間時,即說明所接收的所述DNS響應(yīng)報文為不可信任的報文,執(zhí)行步驟S111,當(dāng)所述第二交互時間大于或等于所述第一交互時間時,即說明所接收的所述DNS響應(yīng)報文為可信任的報文,則執(zhí)行步驟S112。[0045]Slll:丟棄所述DNS響應(yīng)報文;即當(dāng)DNS響應(yīng)報文為不可信任的報文時,丟棄所述DNS響應(yīng)報文。[0046]S112:當(dāng)所述第二交互時間大于或等于所述第一交互時間時,即所接收的所述DNS響應(yīng)報文為可信任的報文時,提取所述DNS響應(yīng)報文中的所述IP地址,將所述IP地址保存至所述本地緩存中,且生成與從所述DNS響應(yīng)報文中提取的所述IP地址相對應(yīng)的第四IP數(shù)據(jù)包過濾規(guī)則,于本實施例中,所述第四IP數(shù)據(jù)包過濾規(guī)則例如為與從所述DNS響應(yīng)報文中提取的所述IP地址相對應(yīng)的iptables規(guī)則。[0047]這樣,當(dāng)所述受限訪問對象的類型為IP地址時,直接生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;當(dāng)所述受限訪問對象的類型為域名時,先生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,并在本地緩存中查找與所述域名相對應(yīng)的IP地址,當(dāng)所述本地緩存中存在與所述域名相對應(yīng)的IP地址時,生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則,當(dāng)所述緩存中不存在與所述域名相對應(yīng)的IP地址時,在DNS服務(wù)器中進行查找,并接收所述DNS服務(wù)器反饋的查找結(jié)果,并根據(jù)查找結(jié)果,生成與所述IP地址相對應(yīng)的第四IP數(shù)據(jù)包過濾規(guī)則,于本具體實施例中,所述第一IP數(shù)據(jù)包過濾規(guī)則獨立存在,即當(dāng)生成所述第一IP數(shù)據(jù)包過濾規(guī)則時,其他三個IP數(shù)據(jù)包過濾規(guī)則則不存在,所述第二IP數(shù)據(jù)包過濾規(guī)則可以與所述第三IP數(shù)據(jù)包過濾規(guī)則或者所述第四IP數(shù)據(jù)包規(guī)則同時存在,所述第三IP數(shù)據(jù)報規(guī)則與所述第四IP數(shù)據(jù)包規(guī)則互斥存在。本具體實施例中的一種外部訪問控制方法滿足用戶同時實現(xiàn)對網(wǎng)絡(luò)訪問受限對象的域名以及與域名相對應(yīng)的IP地址的訪問限制,保證網(wǎng)絡(luò)訪問控制的有效性、全面性、以及靈活性。[0048]于另一優(yōu)選實施例中,與上述實施例不同的是,所述外部訪問控制方法還包括以下步驟:設(shè)置向所述DNS服務(wù)器發(fā)送所述DNS查詢報文的次數(shù)閾值;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文后,記錄所述DNS查詢報文發(fā)送次數(shù);當(dāng)由于所述第二交互時間小于所述第一交互時間而丟棄所述DNS響應(yīng)報文后,判斷所述DNS查詢報文發(fā)送次數(shù)是否大于所述次數(shù)閾值,當(dāng)判斷結(jié)果為是時,返回查詢失敗信息,不對所述域名對應(yīng)的所述IP地址進行過濾;當(dāng)判斷結(jié)果為否時,重新向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文。[0049]本發(fā)明的外部訪問控制方法,在網(wǎng)關(guān)部分分別針對不同的網(wǎng)關(guān)實現(xiàn)網(wǎng)絡(luò)訪問受限對象的域名和IP地址的同步控制,保證控制的有效性、全面性、以及靈活性。[0050]本發(fā)明還提供一種網(wǎng)關(guān),應(yīng)用在藉由所述網(wǎng)關(guān)、遠程控制終端及DNS服務(wù)器構(gòu)成的系統(tǒng)架構(gòu)中,所述遠程控制終端對所有的網(wǎng)關(guān)進行監(jiān)控和配置,用于向特定的網(wǎng)關(guān)下發(fā)網(wǎng)絡(luò)訪問受限對象,每個網(wǎng)關(guān)都與一預(yù)設(shè)的DNS服務(wù)器通信,所述遠程控制終端例如為電信或移動等運營商提供的遠程控制設(shè)備,又例如為智能手機或者個人電腦等電子設(shè)備。所述遠程控制終端主要用于監(jiān)控網(wǎng)關(guān),按需要下發(fā)相關(guān)配置,例如網(wǎng)絡(luò)訪問受限對象的配置和下發(fā)。所述DNS服務(wù)器即計算機域名系統(tǒng),是由域名解析器和域名服務(wù)器組成的。所述域名服務(wù)器中保存有該網(wǎng)絡(luò)中所有主機的域名和對應(yīng)IP地址,所述域名解析器可以將域名轉(zhuǎn)換為其相對應(yīng)的IP地址。[0051]請參閱圖3,顯示為本發(fā)明的一種網(wǎng)關(guān)在一具體實施例中的模塊結(jié)構(gòu)示意圖,所述網(wǎng)關(guān)1,包括:過濾對象配置模塊11、過濾對象類型判斷模塊12、過濾規(guī)則生成模塊13、以及IP地址查詢模塊14。[0052]所述過濾對象配置模塊11用以接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置;于本實施例中,所述過濾對象配置模塊11接收遠程控制終端下發(fā)的所述網(wǎng)絡(luò)訪問受限對象的配置,所述遠程控制終端例如為電信或移動等運營商提供的遠程控制設(shè)備,又例如為智能手機或者個人電腦等電子設(shè)備。[0053]所述過濾對象類型判斷模塊12用以判斷接收到的所述網(wǎng)絡(luò)訪問受限對象的類型。[0054]所述過濾規(guī)則生成模塊13與所述過濾對象類型判斷模塊12連接,當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址時,生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;于本實施例中,所述第一IP數(shù)據(jù)包過濾規(guī)則為與所述IP地址相對應(yīng)的iptables規(guī)則,iptables是與Linux內(nèi)核集成的IP信息包過濾工具,它使插入、修改和除去信息包過濾表中的規(guī)則變得容易,可以定制用戶自定義的規(guī)則來滿足用戶的特定需求。所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址時,生成與所述IP地址相對應(yīng)的iptables規(guī)則,用來限制對所述IP地址的訪問。當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為域名時,生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,于本實施例中,所述第二IP數(shù)據(jù)包過濾規(guī)則例如為與所述域名相對應(yīng)的iptables規(guī)則,用來限制對所述域名的訪問。并查找與所述域名相對應(yīng)的IP地址,根據(jù)查找結(jié)果生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則;于本實施例中,所述第三IP數(shù)據(jù)包過濾規(guī)則為根據(jù)查找結(jié)果而生成與所述IP地址相對應(yīng)的iptables規(guī)則。[0055]所述IP地址查詢模塊14用以當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為域名時,使所述過濾規(guī)則生成模塊13生成所述第三IP數(shù)據(jù)包過濾規(guī)則,具體為,查找所述網(wǎng)關(guān)I的本地緩存中是否存在與所述域名相對應(yīng)的IP地址,若是,向所述過濾規(guī)則生成模塊返回所述IP地址;若否,與預(yù)設(shè)的DNS服務(wù)器進行一次正常的報文交互,獲取第一交互時間;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文,用以查詢與所述域名相對應(yīng)的IP地址;獲取所述DNS服務(wù)器反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器交互的第二交互時間,當(dāng)所述第二交互時間小于所述第一交互時間時,即說明所接收的所述DNS響應(yīng)報文為不可信任的報文,丟棄所述DNS響應(yīng)報文;當(dāng)所述第二交互時間大于或等于所述第一交互時間時,即說明所接收的所述DNS響應(yīng)報文為可信任的報文,提取所述DNS響應(yīng)報文中的所述IP地址,將所述IP地址保存至所述網(wǎng)關(guān)I的所述本地緩存中,并將所述IP地址向所述過濾規(guī)則生成模塊13進行反饋。[0056]這樣,當(dāng)所述網(wǎng)關(guān)I接收到的所述受限訪問對象的類型為IP地址時,直接生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;當(dāng)所述受限訪問對象的類型為域名時,先生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,并在所述網(wǎng)關(guān)I的本地緩存中查找與所述域名相對應(yīng)的IP地址,根據(jù)查找結(jié)果生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)貝U,所述第一IP數(shù)據(jù)包過濾規(guī)則獨立存在,即當(dāng)生成所述第一IP數(shù)據(jù)包過濾規(guī)則時,其他兩個IP數(shù)據(jù)包過濾規(guī)則則不存在,所述第二IP數(shù)據(jù)包過濾規(guī)則可以與所述第三IP數(shù)據(jù)包過濾規(guī)則同時存在,所述第三IP數(shù)據(jù)包過濾規(guī)則包含兩種情況,即當(dāng)所述網(wǎng)關(guān)I的本地緩存中存在與所述域名相對應(yīng)的IP地址時,生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則,當(dāng)所述本地緩存中不存在與所述域名相對應(yīng)的IP地址時,在DNS服務(wù)器中進行查找,并接收所述DNS服務(wù)器反饋的查找結(jié)果,并根據(jù)查找結(jié)果,生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則,且兩種所述第三IP數(shù)據(jù)包過濾規(guī)則為互斥存在。所以本具體實施例中的所述網(wǎng)關(guān)I可以滿足用戶同時實現(xiàn)對網(wǎng)絡(luò)訪問受限對象的域名以及與域名相對應(yīng)的IP地址的訪問限制,保證網(wǎng)絡(luò)訪問控制的有效性、全面性、以及靈活性。[0057]于另一具體實施例中,如圖4所示,顯示為本發(fā)明的一種網(wǎng)關(guān)的IP地址查詢模塊在一具體實施例中的模塊結(jié)構(gòu)示意圖。所述網(wǎng)關(guān)I的所述IP地址查詢模塊14還包括查詢次數(shù)閾值設(shè)定模塊141、查詢次數(shù)計數(shù)模塊142、以及查詢次數(shù)判斷模塊143。[0058]所述查詢次數(shù)閾值設(shè)定模塊141用以設(shè)置向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文的次數(shù)閾值。[0059]所述查詢次數(shù)計數(shù)模塊142用以當(dāng)向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文時,自動加一進行發(fā)送次數(shù)的累計,于具體實施例中,所述查詢次數(shù)計數(shù)模塊142可以為軟件計數(shù)模塊,也可以為硬件的計數(shù)器。[0060]所述查詢次數(shù)判斷模塊143用以根據(jù)所述查詢次數(shù)計數(shù)模塊的記錄結(jié)果判斷所述DNS查詢報文發(fā)送次數(shù)是否大于所述次數(shù)閾值,當(dāng)判斷結(jié)果為是時,返回查詢失敗信息,不對所述域名對應(yīng)的所述IP地址進行過濾;當(dāng)判斷結(jié)果為否時,重新向所述DNS服務(wù)器發(fā)送所述DNS查詢報文。[0061]本發(fā)明在網(wǎng)關(guān)部分分別針對不同的網(wǎng)關(guān)實現(xiàn)網(wǎng)絡(luò)訪問受限對象的域名和IP地址的同步控制,保證控制的有效性、全面性、以及靈活性。[0062]本發(fā)明還提供一種DNS服務(wù)器,應(yīng)用在藉由網(wǎng)關(guān)、遠程控制終端及所述DNS服務(wù)器構(gòu)成的系統(tǒng)架構(gòu)中,所述遠程控制終端對所有的網(wǎng)關(guān)進行監(jiān)控和配置,用于向特定的網(wǎng)關(guān)下發(fā)網(wǎng)絡(luò)訪問受限對象,每個網(wǎng)關(guān)都與一預(yù)設(shè)的DNS服務(wù)器通信,所述遠程控制終端例如為電信或移動等運營商提供的遠程控制設(shè)備,又例如為智能手機或者個人電腦等電子設(shè)備。所述遠程控制終端主要用于監(jiān)控網(wǎng)關(guān),按需要下發(fā)相關(guān)配置,例如網(wǎng)絡(luò)訪問受限對象的配置和下發(fā)。所述DNS服務(wù)器即計算機域名系統(tǒng),是由域名解析器和域名服務(wù)器組成的。所述域名服務(wù)器中保存有該網(wǎng)絡(luò)中所有主機的域名和對應(yīng)IP地址,所述域名解析器可以將域名轉(zhuǎn)換為其相對應(yīng)的IP地址。[0063]請參閱圖5,顯示為本發(fā)明的一種DNS服務(wù)器在一具體實施例中的模塊結(jié)構(gòu)示意圖。所述DNS服務(wù)器2包括IP地址查找模塊21以及報文交互模塊22。[0064]所述IP地址查找模塊21用以根據(jù)接收到的攜帶有域名信息的DNS查詢報文查找與所述域名相對應(yīng)的IP地址。[0065]所述報文交互模塊22用以與外部設(shè)備進行正常的報文交互以供計算出第一交互時間,與本具體實施例中,所述外部設(shè)備為網(wǎng)關(guān),且根據(jù)所述IP地址查找模塊21的查找結(jié)果反饋攜帶有所述IP地址信息的DNS響應(yīng)報文并以供所述網(wǎng)關(guān)計算出與所述DNS服務(wù)器之間交互的第二交互時間。具體為所述網(wǎng)關(guān)與預(yù)設(shè)的DNS服務(wù)器2進行一次正常的報文交互,獲取第一交互時間;所述網(wǎng)關(guān)向所述DNS服務(wù)器2發(fā)送與所述域名相對應(yīng)的DNS查詢報文,獲取所述DNS服務(wù)器2反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器2交互的第二交互時間。[0066]其中,所述第一交互時間及第二交互時間用于供所述網(wǎng)關(guān)在所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址并保存至所述網(wǎng)關(guān)的本地緩存中,且生成與所述IP地址相對應(yīng)的IP數(shù)據(jù)包過濾規(guī)則,即說明所述第二交互時間大于或等于所述第一交互時間時,所述DNS響應(yīng)報文為可信任的報文。[0067]綜上所述,本發(fā)明的一種外部訪問控制方法、網(wǎng)關(guān)及DNS服務(wù)器,在網(wǎng)關(guān)部分分別針對不同的網(wǎng)關(guān)實現(xiàn)網(wǎng)絡(luò)訪問受限對象的域名和IP地址的同步控制,保證控制的有效性、全面性、以及靈活性。所以,本發(fā)明有效克服了現(xiàn)有技術(shù)中的種種缺點而具高度產(chǎn)業(yè)利用價值。[0068]上述實施例僅例示性說明本發(fā)明的原理及其功效,而非用于限制本發(fā)明。任何熟悉此技術(shù)的人士皆可在不違背本發(fā)明的精神及范疇下,對上述實施例進行修飾或改變。因此,舉凡所屬【
技術(shù)領(lǐng)域:
】中具有通常知識者在未脫離本發(fā)明所揭示的精神與技術(shù)思想下所完成的一切等效修飾或改變,仍應(yīng)由本發(fā)明的權(quán)利要求所涵蓋?!緳?quán)利要求】1.一種外部訪問控制方法,其特征在于,包括如下步驟:接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置;判斷所述網(wǎng)絡(luò)訪問受限對象的類型;當(dāng)所述類型為IP地址時,生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;當(dāng)所述類型為域名時,生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,并查找本地緩存中是否存在與所述域名相對應(yīng)的IP地址,若存在,提取所述IP地址,生成與所述本地緩存中提取的IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則;若不存在,執(zhí)行以下步驟:與預(yù)設(shè)的DNS服務(wù)器進行一次正常的報文交互,獲取第一交互時間;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文,用以查詢與所述域名相對應(yīng)的IP地址;獲取所述DNS服務(wù)器反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器交互的第二交互時間,當(dāng)所述第二交互時間小于所述第一交互時間時,丟棄所述DNS響應(yīng)報文;當(dāng)所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址,將所述IP地址保存至所述本地緩存中,且生成與從所述DNS響應(yīng)報文中提取的所述IP地址相對應(yīng)的第四IP數(shù)據(jù)包過濾規(guī)則。2.根據(jù)權(quán)利要求1所述的外部訪問控制方法,其特征在于:還包括設(shè)置向所述DNS服務(wù)器發(fā)送所述DNS查詢報文的次數(shù)閾值。3.根據(jù)權(quán)利要求2所述的外部訪問控制方法,其特征在于:向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文后,記錄所述DNS查詢報文發(fā)送次數(shù)。4.根據(jù)權(quán)利要求3所述的外部訪問控制方法,其特征在于:當(dāng)由于所述第二交互時間小于所述第一交互時間而丟棄所述DNS響應(yīng)報文后,判斷所述DNS查詢報文發(fā)送次數(shù)是否大于所述次數(shù)閾值,當(dāng)判斷結(jié)果為是時,返回查詢失敗信息,不對所述域名對應(yīng)的所述IP地址進行過濾;當(dāng)判斷結(jié)果為否時,重新向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文。5.—種網(wǎng)關(guān),其特征在于,包括:過濾對象配置模塊,用以接收URL格式的網(wǎng)絡(luò)訪問受限對象的配置;過濾對象類型判斷模塊,用以判斷接收到的所述網(wǎng)絡(luò)訪問受限對象的類型;過濾規(guī)則生成模塊,與所述過濾對象類型判斷模塊連接,當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為IP地址時,生成與所述IP地址相對應(yīng)的第一IP數(shù)據(jù)包過濾規(guī)則;當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為域名時,生成與所述域名相對應(yīng)的第二IP數(shù)據(jù)包過濾規(guī)則,并查找與所述域名相對應(yīng)的IP地址,根據(jù)查找結(jié)果生成與所述IP地址相對應(yīng)的第三IP數(shù)據(jù)包過濾規(guī)則;IP地址查詢模塊,當(dāng)所述網(wǎng)絡(luò)訪問受限對象的類型為域名時,查找本地緩存中是否存在與所述域名相對應(yīng)的IP地址,若是,向所述過濾規(guī)則生成模塊返回所述IP地址;若否,與預(yù)設(shè)的DNS服務(wù)器進行一次正常的報文交互,獲取第一交互時間;向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文,用以查詢與所述域名相對應(yīng)的IP地址;獲取所述DNS服務(wù)器反饋的DNS響應(yīng)報文,計算與所述DNS服務(wù)器交互的第二交互時間,當(dāng)所述第二交互時間小于所述第一交互時間時,丟棄所述DNS響應(yīng)報文;當(dāng)所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址,將所述IP地址保存至所述本地緩存中,并將所述IP地址向所述過濾規(guī)則生成模塊進行反饋。6.根據(jù)權(quán)利要求5所述的網(wǎng)關(guān),其特征在于:所述IP地址查詢模塊還包括查詢次數(shù)閾值設(shè)定模塊,用以設(shè)置向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文的次數(shù)閾值。7.根據(jù)權(quán)利要求6所述的網(wǎng)關(guān),其特征在于:所述IP地址查詢模塊還包括查詢次數(shù)計數(shù)模塊,用以當(dāng)向所述DNS服務(wù)器發(fā)送與所述域名相對應(yīng)的DNS查詢報文時,自動加一進行發(fā)送次數(shù)的累計。8.根據(jù)權(quán)利要求7所述的網(wǎng)關(guān),其特征在于:所述IP地址查詢模塊還包括查詢次數(shù)判斷模塊,用以根據(jù)所述查詢次數(shù)計數(shù)模塊的記錄結(jié)果判斷所述DNS查詢報文發(fā)送次數(shù)是否大于所述次數(shù)閾值,當(dāng)判斷結(jié)果為是時,返回查詢失敗信息,不對所述域名對應(yīng)的所述IP地址進行過濾;當(dāng)判斷結(jié)果為否時,重新向所述DNS服務(wù)器發(fā)送所述DNS查詢報文。9.一種DNS服務(wù)器,其特征在于,包括:IP地址查找模塊,用以根據(jù)接收到的攜帶有域名信息的DNS查詢報文查找與所述域名相對應(yīng)的IP地址;報文交互模塊,用以與外部設(shè)備進行正常的報文交互以供計算出第一交互時間,且根據(jù)所述IP地址查找模塊的查找結(jié)果反饋攜帶有所述IP地址信息的DNS響應(yīng)報文并以供計算出第二交互時間;其中,所述第一交互時間及第二交互時間用于供所述外部設(shè)備在所述第二交互時間大于或等于所述第一交互時間時,提取所述DNS響應(yīng)報文中的所述IP地址并保存至所述外部設(shè)備本地緩存中,且生成與所述IP地址相對應(yīng)的IP數(shù)據(jù)包過濾規(guī)則。10.根據(jù)權(quán)利要求9所述的DNS服務(wù)器,其特征在于,還包括閾值設(shè)定模塊,用以設(shè)定所述IP地址查找模塊的查找時間閾值,當(dāng)查找時間大于預(yù)設(shè)的所述時間閾值時,查找結(jié)束,并向所述外部設(shè)備反饋查找失敗信息?!疚臋n編號】H04L29/12GK104202444SQ201410504935【公開日】2014年12月10日申請日期:2014年9月26日優(yōu)先權(quán)日:2014年9月26日【發(fā)明者】凌靈申請人:上海斐訊數(shù)據(jù)通信技術(shù)有限公司