本發(fā)明涉及終端領域,特別涉及一種終端訪問網(wǎng)站的方法、一種終端訪問網(wǎng)站的系統(tǒng)以及一種終端。
背景技術:
終端訪問網(wǎng)站的方式通常有以下兩種:第一、通過域名的方式訪問,例如www.baidu.com;第二、通過ip地址的方式訪問,例如61.135.169.125。其中,終端通過域名訪問網(wǎng)站的基本流程為:首先,終端發(fā)起針對域名的dns(domainnamesystem,域名系統(tǒng))查詢,dns服務器返回對應的ip地址;其次,終端使用該ip地址發(fā)起對網(wǎng)站的訪問。終端直接通過ip地址訪問網(wǎng)站時,則省去了dns查詢的過程。
目前,隨著互聯(lián)網(wǎng)技術的發(fā)展,行業(yè)用戶使用終端的需求越來越大,其中,主要是數(shù)據(jù)業(yè)務的增長。與普通用戶相比,行業(yè)用戶對終端的使用有著特殊的需求,例如學生課堂上使用的終端只能訪問特定的教育網(wǎng)站、醫(yī)護人員使用的終端只允許訪問醫(yī)療相關的網(wǎng)站、部隊中使用的終端只能訪問軍網(wǎng)等。
針對行業(yè)用戶的上述需求,需要限制終端訪問的網(wǎng)站。目前常用的做法為:允許固定的幾個域名進行dns查詢,禁止其他域名進行dns查詢,以限制終端訪問其他域名對應的網(wǎng)站。但是這種做法無法限制終端用戶通過ip地址訪問網(wǎng)站。舉個例子,雖然禁止了域名a進行dns查詢,但是終端用戶仍然可以通過與域名a對應的ip地址訪問域名a對應的網(wǎng)站。
為了解決上述無法限制終端用戶通過ip地址訪問網(wǎng)站的問題,提出了這樣一種做法:在上述做法的基礎上,允許使用上述域名對應的ip地址訪問網(wǎng)站,以限制終端訪問其他域名對應的網(wǎng)站。但是,當前的大部分網(wǎng)站均采用cdn(contentdeliverynetwork,內(nèi)容分發(fā)網(wǎng)絡)部署,即同一個域名可以對應多個不同的ip地址,由于cdn部署與訪問網(wǎng)站的終端所在的地區(qū)有著密不可分的關系,因此這種做法無法枚舉所有的ip地址。舉個例子,假設允許域名b進行dns查詢,且允許使用域名b對應的ip地址ip1~ip7訪問網(wǎng)站;當終端用戶通過域名b進行dns查詢時,由于采用cdn部署,針對域名b返回的ip地址為ip8,此時終端則不能使用ip8訪問網(wǎng)站,也就是說,原本終端可以訪問域名b對應的網(wǎng)站,但是上述的情況又限制了終端訪問域名b對應的網(wǎng)站,即出現(xiàn)有時可以訪問(當返回的ip地址為ip1~ip7時)有時又不可以訪問(當返回的ip地址不為ip1~ip7時)同一網(wǎng)站的問題,這會給終端用戶帶來困惑,甚至誤以為終端出現(xiàn)故障,用戶體檢不佳。
技術實現(xiàn)要素:
本發(fā)明要解決的技術問題是為了克服現(xiàn)有技術中限制終端訪問網(wǎng)站的做法存在漏洞以及用戶體驗不佳等的缺陷,提供一種終端訪問網(wǎng)站的方法、一種終端訪問網(wǎng)站的系統(tǒng)以及一種終端。
本發(fā)明是通過下述技術方案來解決上述技術問題的:
第一方面,本發(fā)明提供一種終端訪問網(wǎng)站的方法,包括:
若訪問網(wǎng)站使用的域名在預設的域名白名單中,則將dns服務器針對所述域名返回的ip地址加入到ip白名單中;
若訪問網(wǎng)站使用的ip地址在所述ip白名單中,則向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。
較佳地,所述將dns服務器針對所述域名返回的ip地址加入到ip白名單中具體包括:
若所述dns服務器針對所述域名返回的ip地址不在ip白名單中,則將所述ip地址加入到所述ip白名單中。
較佳地,所述方法還包括:若訪問網(wǎng)站使用的ip地址不在所述ip白名單中,則丟棄包括所述ip地址的ip數(shù)據(jù)包。
第二方面,本發(fā)明提供一種終端,包括:
添加模塊,用于當訪問網(wǎng)站使用的域名在預設的域名白名單中時,將dns服務器針對所述域名返回的ip地址加入到ip白名單中;
發(fā)送模塊,用于當訪問網(wǎng)站使用的ip地址在所述ip白名單中時,向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。
較佳地,所述添加模塊具體用于當所述dns服務器針對所述域名返回的ip地址不在ip白名單中時,將所述ip地址加入到所述ip白名單中。
較佳地,所述終端還包括丟棄模塊,用于當訪問網(wǎng)站使用的ip地址不在所述ip白名單中時,丟棄包括所述ip地址的ip數(shù)據(jù)包。
第三方面,本發(fā)明提供一種終端,包括至少一處理器和至少一存儲器,所述至少一存儲器用于存儲計算機程序,所述至少一處理器執(zhí)行所述計算機程序后使得所述終端執(zhí)行上述所記載的方法。
第四方面,本發(fā)明提供一種終端訪問網(wǎng)站的系統(tǒng),包括終端和dns服務器,所述終端包括訪問模塊、添加模塊以及發(fā)送模塊;
所述訪問模塊用于使用域名和ip地址訪問網(wǎng)站;
所述dns服務器用于針對所述訪問模塊使用的域名返回ip地址;
所述添加模塊用于當所述訪問模塊使用的域名在預設的域名白名單中時,將所述dns服務器返回的ip地址加入到ip白名單中;
所述發(fā)送模塊用于當所述訪問模塊使用的ip地址在所述ip白名單中時,向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。
較佳地,所述添加模塊具體用于當所述dns服務器返回的ip地址不在ip白名單中時,將所述ip地址加入到所述ip白名單中。
較佳地,所述終端還包括丟棄模塊,用于當所述訪問模塊使用的ip地址不在所述ip白名單中時,丟棄包括所述ip地址的ip數(shù)據(jù)包。
在符合本領域常識的基礎上,上述各優(yōu)選條件,可任意組合,即得本發(fā)明各較佳實例。
本發(fā)明的積極進步效果在于:與現(xiàn)有技術相比,本發(fā)明中,使用域名白名單中的域名訪問網(wǎng)站時,將dns服務器針對所述域名返回的ip地址加入到ip白名單中,使得終端只能訪問域名白名單中的域名和ip白名單中的ip地址對應的網(wǎng)站,成功地限制了終端訪問除這些網(wǎng)站之外的網(wǎng)站。另外,無論允許訪問的網(wǎng)站是否采用cdn部署,dns服務器針對域名返回的所有ip地址均會被加入到ip白名單中,進而利用這些ip地址訪問網(wǎng)站,即終端可以利用與域名對應的所有ip地址訪問網(wǎng)站,不會造成終端有時可以訪問有時又不可以訪問同一網(wǎng)站的問題,改善了用戶體驗。
附圖說明
圖1為本發(fā)明實施例提供的一種終端訪問網(wǎng)站的方法流程圖。
圖2為本發(fā)明實施例提供的另一種終端訪問網(wǎng)站的方法流程圖。
圖3為本發(fā)明實施例提供的一種終端的結構框圖。
圖4為本發(fā)明實施例提供的另一種終端的結構框圖。
圖5為本發(fā)明實施例提供的一種終端訪問網(wǎng)站的系統(tǒng)的結構框圖。
具體實施方式
下面通過實施例的方式進一步說明本發(fā)明,但并不因此將本發(fā)明限制在所述的實施例范圍之中。
本發(fā)明中涉及到的終端均為能夠訪問網(wǎng)站的終端,尤其是指行業(yè)用戶使用的終端,例如學生課堂上使用的終端、醫(yī)護人員使用的終端以及部隊中使用的終端等。
目前,大部分的網(wǎng)站均采用cdn部署,即同一個域名可以對應多個不同的ip地址,舉個例子,61.135.169.125、61.135.169.121、115.239.211.112、115.239.210.27、119.75.218.77、220.181.112.244、119.75.217.109、119.75.213.61、180.97.33.108等ip地址均對應同一個域名:www.baidu.com。
本實施例提供一種終端訪問網(wǎng)站的方法,如圖1所示,包括以下步驟:
步驟101、若訪問網(wǎng)站使用的域名在預設的域名白名單中,則將dns服務器針對所述域名返回的ip地址加入到ip白名單中;
步驟102、若訪問網(wǎng)站使用的ip地址在所述ip白名單中,則向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。
在可選的一種實施方式中,如圖2所示,上述方法包括以下步驟:
步驟201、判斷訪問網(wǎng)站使用的域名是否在預設的域名白名單中,若是,則執(zhí)行步驟202,若否,則結束流程;
步驟202、將dns服務器針對所述域名返回的ip地址加入到ip白名單中;
步驟203、判斷訪問網(wǎng)站使用的ip地址是否在所述ip白名單中,若是,則執(zhí)行步驟204,若否,則結束流程;
步驟204、向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。此時,終端可以訪問網(wǎng)站。
在可選的一種實施方式中,事先不預設ip白名單。也就是說,ip白名單中的ip地址均為dns服務器針對域名返回的ip地址。
在可選的一種實施方式中,可以事先預設ip白名單。若使用ip地址訪問網(wǎng)站,則限制終端使用預設ip白名單以外的ip地址訪問網(wǎng)站,此時ip白名單中的ip地址是固定的。若使用域名訪問網(wǎng)站,則將dns服務器針對所述域名返回的ip地址加入到預設的ip白名單,此時ip白名單中的ip地址是變化的。
在可選的一種實施方式中,所述將dns服務器針對所述域名返回的ip地址加入到ip白名單中具體包括:若所述dns服務器針對所述域名返回的ip地址不在ip白名單中,則將所述ip地址加入到所述ip白名單中。為了確保ip白名單中的ip地址不存在重復現(xiàn)象,在將dns服務器返回的ip地址加入到ip白名單之前,對所述ip地址是否在ip白名單中進行判斷,若在,則不加入;若不在,則加入。
舉個例子,事先預設的ip白名單中包括5個ip地址,分別為ip1、ip2、ip5、ip9、ip10。當終端在不同時間使用域名a訪問網(wǎng)站時,dns服務器針對域名a返回的ip地址包括ip1、ip3、ip4、ip9。這樣,ip白名單中就會包括7個ip地址,分別為ip1、ip2、ip3、ip4、ip5、ip9、ip10。
需要注意的是,在預設完成域名白名單之后,域名白名單中的域名是固定的,限制終端使用除域名白名單以外的域名訪問網(wǎng)站。
其中,對域名白名單和ip白名單的具體形式不作限制,形式可以為集合,也可以為數(shù)據(jù)表等。
在可選的一種實施方式中,上述方法還包括:若訪問網(wǎng)站使用的ip地址不在所述ip白名單中,則丟棄包括所述ip地址的ip數(shù)據(jù)包。當訪問網(wǎng)站使用的ip地址不在ip白名單中時,終端無法訪問網(wǎng)站。另外,還可以根據(jù)具體情況輸出相應的提示消息,例如在終端界面上顯示“您所使用的ip地址受限,無法訪問網(wǎng)站”。
與現(xiàn)有技術相比,上述實施例中,使用域名白名單中的域名訪問網(wǎng)站時,將dns服務器針對所述域名返回的ip地址加入到ip白名單中,使得終端只能訪問域名白名單中的域名和ip白名單中的ip地址對應的網(wǎng)站,成功地限制了終端訪問除這些網(wǎng)站之外的網(wǎng)站。另外,無論允許訪問的網(wǎng)站是否采用cdn部署,dns服務器針對域名返回的所有ip地址均會被加入到ip白名單中,進而利用這些ip地址訪問網(wǎng)站,即終端可以利用與域名對應的所有ip地址訪問網(wǎng)站,不會造成終端有時可以訪問有時又不可以訪問同一網(wǎng)站的問題,改善了用戶體驗。
本實施例還提供一種終端30,如圖3所示,包括添加模塊31和發(fā)送模塊32。具體地,添加模塊用于當訪問網(wǎng)站使用的域名在預設的域名白名單中時,將dns服務器針對所述域名返回的ip地址加入到ip白名單中;發(fā)送模塊用于當訪問網(wǎng)站使用的ip地址在所述ip白名單中時,向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。
在可選的一種實施方式中,上述添加模塊具體用于當所述dns服務器針對所述域名返回的ip地址不在ip白名單中時,將所述ip地址加入到所述ip白名單中。
在可選的一種實施方式中,如圖4所示,終端30還包括丟棄模塊33,用于當訪問網(wǎng)站使用的ip地址不在所述ip白名單中時,丟棄包括所述ip地址的ip數(shù)據(jù)包。
本實施例還提供一種終端,包括至少一處理器和至少一存儲器,所述至少一存儲器用于存儲計算機程序,所述至少一處理器執(zhí)行所述計算機程序后使得所述終端執(zhí)行上述所記載的方法。
本實施例還提供一種終端訪問網(wǎng)站的系統(tǒng)50,如圖5所示,包括終端51和dns服務器52,終端51包括訪問模塊511、添加模塊512以及發(fā)送模塊513。
訪問模塊用于使用域名和ip地址訪問網(wǎng)站;
dns服務器用于針對所述訪問模塊使用的域名返回ip地址;
添加模塊用于當所述訪問模塊使用的域名在預設的域名白名單中時,將所述dns服務器返回的ip地址加入到ip白名單中;
發(fā)送模塊用于當所述訪問模塊使用的ip地址在所述ip白名單中時,向internet網(wǎng)絡發(fā)送包括所述ip地址的ip數(shù)據(jù)包。
在可選的一種實施方式中,上述添加模塊具體用于當所述dns服務器返回的ip地址不在ip白名單中時,將所述ip地址加入到所述ip白名單中。
在可選的一種實施方式中,終端51還包括丟棄模塊,用于當所述訪問模塊使用的ip地址不在所述ip白名單中時,丟棄包括所述ip地址的ip數(shù)據(jù)包。
需要說明的是,應理解以上裝置的各個模塊的劃分僅僅是一種邏輯功能的劃分,實際實現(xiàn)時可以全部或部分集成到一個物理實體上,也可以物理上分開。且這些模塊可以全部以軟件通過處理元件調(diào)用的形式實現(xiàn);也可以全部以硬件的形式實現(xiàn);還可以部分模塊通過處理元件調(diào)用軟件的形式實現(xiàn),部分模塊通過硬件的形式實現(xiàn)。例如,發(fā)送模塊可以為單獨設立的處理元件,也可以集成在上述裝置的某一個芯片中實現(xiàn),此外,也可以以程序代碼的形式存儲于上述裝置的存儲器中,由上述裝置的某一個處理元件調(diào)用并執(zhí)行以上發(fā)送模塊的功能。其它模塊的實現(xiàn)與之類似。此外這些模塊全部或部分可以集成在一起,也可以獨立實現(xiàn)。這里所述的處理元件可以是一種集成電路,具有信號的處理能力。在實現(xiàn)過程中,上述方法的各步驟或以上各個模塊可以通過處理器元件中的硬件的集成邏輯電路或者軟件形式的指令完成。
例如,以上這些模塊可以是被配置成實施以上方法的一個或多個集成電路,例如:一個或多個特定集成電路(applicationspecificintegratedcircuit,簡稱asic),或,一個或多個微處理器(digitalsingnalprocessor,簡稱dsp),或,一個或者多個現(xiàn)場可編程門陣列(fieldprogrammablegatearray,簡稱fpga)等。再如,當以上某個模塊通過處理元件調(diào)度程序代碼的形式實現(xiàn)時,該處理元件可以是通用處理器,例如中央處理器(centralprocessingunit,簡稱cpu)或其它可以調(diào)用程序代碼的處理器。再如,這些模塊可以集成在一起,以片上系統(tǒng)(system-on-a-chip,簡稱soc)的形式實現(xiàn)。
本領域普通技術人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質。
雖然以上描述了本發(fā)明的具體實施方式,但是本領域的技術人員應當理解,這些僅是舉例說明,本發(fā)明的保護范圍是由所附權利要求書限定的。本領域的技術人員在不背離本發(fā)明的原理和實質的前提下,可以對這些實施方式做出多種變更或修改,但這些變更和修改均落入本發(fā)明的保護范圍。