一種安全域名系統及其故障處理方法
【技術領域】
[0001]本發明涉及互聯網應用技術領域,特別涉及一種安全域名系統及其故障處理方法。
【背景技術】
[0002]DNS (Domain Name System,域名系統),Internet (因特網)上作為域名和IP地址相互映射的一個分布式數據庫,能夠使用戶更方便地訪問互聯網,而不用去記住能夠被機器直接讀的IP數串。通過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析或主機名解析。
[0003]Internet主機域名的一般結構為:主機名.三級域名.二級域名.頂級域名。Internet的頂級域名由Internet網絡協會域名注冊查詢負責網絡地址分配的委員會進行登記和管理,它還為Internet的每一臺主機分配唯一的IP地址。
[0004]圖1是現有技術中DNS的一個域名解析流程圖,以訪問網易門戶地址www.163.com的解析過程為例進行介紹。其流程為:
[0005]步驟1,用戶電腦(或客戶端)向其系統上設置的本地DNS服務器發送解析www.163.com的請求。所謂本地DNS服務器是指一個DNS服務IP地址,可以是從運營商自動獲取的,也可以是手動設置的。
[0006]步驟2,本地DNS服務器會在自己的空間里查看是否有這個域名的緩存,如果沒有,就會向根域服務器發送WWW.163.com的域名解析請求。
[0007]步驟3,根域服務器接收到本地DNS服務器關于域名的解析請求后,分析請求的域名,返回給本地DNS服務器.com這個域名節點的服務器的IP地址。
[0008]步驟4,本地DNS服務器在接到.com頂級域的服務器IP地址后,向.com頂級域服務器發出查詢WWW.163.com的解析請求。
[0009]步驟5,.com頂級域服務器在接收到關于www.163.com的解析請求后,返回給本地DNS服務器關于163這個二級域的DNS服務器的IP地址。
[0010]步驟6,本地DNS服務器繼續向163這個二級域的DNS服務器發起關于www.163.com的解析請求。
[0011]步驟7,163這個域的管理服務器管理163.com下的所有的子域名。它的域名空間中有www這個子域名,其對應的IP地址為111.1.53.220,因此163.com域的DNS服務器會返回www.163.com對應的IP地址111.1.53.220給本地DNS服務器。
[0012]步驟8,本地DNS服務器接收到163.com這個域服務器關于www.163.com解析結果后,返回給用戶對應的IP地址111.1.53.220,同時會將這個結果保留一段時間,以備其他用戶的查詢。
[0013]步驟9,用戶電腦在獲得www.163.com域名對應的IP地址111.1.53.220后,就開始向111.1.53.220這個IP請求網頁內容。到此,DNS的一個完整請求解析流程結束。
[0014]然而,當根域服務器、頂級域服務器或者其他授權服務器發生故障不能提供正常的域名解析服務時,如何進行域名解析成為亟待解決的技術問題。
【發明內容】
[0015]鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的安全域名系統以及基于安全域名系統進行故障處理的方法。
[0016]根據本發明的一方面,提供了一種安全域名系統,包括:
[0017]第一節點,適于對客戶端發起的DNS請求提供域名解析服務;
[0018]作為所述第一節點的代理節點的第二節點,適于當所述第一節點出現DNS解析故障時,向第三節點請求應答所述DNS請求;
[0019]授權信息數據庫,適于存儲指定區域的所有DNS請求及對應的授權信息;
[0020]第三節點,適于接收來自所述第二節點的DNS請求,調用所述授權信息數據庫中相應的授權信息,對所述DNS請求進行應答。
[0021]可選地,所述第三節點僅對來自所述第二節點的DNS請求進行應答。
[0022]可選地,所述第三節點的數據鏈路獨立于所述第一節點的數據鏈路。
[0023]可選地,所述第二節點還適于:
[0024]對所述DNS請求中的異常請求進行過濾;
[0025]向第三節點請求應答過濾后的所述DNS請求。
[0026]可選地,所述系統還包括:
[0027]遞歸服務器,適于接收所述客戶端發起的DNS請求,并向所述第一節點和/或所述第二節點請求應答所述DNS請求。
[0028]可選地,所述第二節點還適于:
[0029]若所述第一節點能夠提供正常的域名解析服務,則拒絕應答所述DNS請求。
[0030]可選地,所述遞歸服務器還適于:
[0031]當所述第一節點能夠提供正常的域名解析服務、所述第二節點拒絕應答所述DNS請求時,向所述第一節點請求應答所述DNS請求。
[0032]可選地,所述第二節點還適于:
[0033]當所述第一節點出現DNS解析故障時,查詢本節點是否緩存了所述DNS請求對應的授權信息;
[0034]若否,則向所述第三節點請求應答所述DNS請求。
[0035]可選地,所述第二節點還適于:
[0036]若本節點緩存了所述DNS請求對應的授權信息,則利用本節點緩存的所述DNS請求對應的授權信息,對所述DNS請求進行應答。
[0037]可選地,所述授權信息包括訪問量超過訪問閾值的DNS解析記錄,和/或,重要域名的DNS解析記錄。
[0038]可選地,所述授權信息數據庫還適于:
[0039]根據所述授權信息的相互關系,組成域名層次空間。
[0040]可選地,所述授權信息數據庫為互聯網域名層次的鏡像。
[0041]可選地,所述第二節點還適于:
[0042]在骨干網對所述指定區域的臨界區域出口處進行DNS數據報文的監聽,以確定所述第一節點是否出現DNS解析故障。
[0043]根據本發明的另一方面,還提供了一種基于安全域名系統進行故障處理的方法,包括:
[0044]當第一節點出現DNS解析故障時,啟動作為所述第一節點的代理節點的第二節點,由所述第二節點向第三節點請求應答所述DNS請求,其中,所述第一節點對客戶端發起的DNS請求提供域名解析服務;
[0045]利用所述第三節點調用授權信息數據庫中相應的授權信息,對所述DNS請求進行應答,其中,所述授權信息數據庫中存儲了指定區域的所有DNS請求及對應的授權信息。
[0046]可選地,所述第三節點僅對來自所述第二節點的DNS請求進行應答。
[0047]可選地,所述第三節點的數據鏈路獨立于所述第一節點的數據鏈路。
[0048]可選地,由所述第二節點向第三節點請求應答所述DNS請求,包括:
[0049]由所述第二節點對所述DNS請求中的異常請求進行過濾,并向第三節點請求應答過濾后的所述DNS請求。
[0050]可選地,所述方法還包括:
[0051]由遞歸服務器接收所述客戶端發起的DNS請求,并向所述第一節點和/或所述第二節點請求應答所述DNS請求。
[0052]可選地,所述方法還包括:
[0053]若所述第一節點能夠提供正常的域名解析服務,則不啟動所述第二節點。
[0054]可選地,當所述遞歸服務器向所述第二節點請求應答所述DNS請求,所述第一節點能夠提供正常的域名解析服務,所述第二節點拒絕應答所述DNS請求時,所述遞歸服務器向所述第一節點請求應答所述DNS請求。
[0055]可選地,在啟動第二節點之后,還包括:
[0056]由所述第二節點查詢本節點是否緩存了所述DNS請求對應的授權信息;
[0057]若否,則向所述第三節點請求應答所述DNS請求。
[0058]可選地,所述方法還包括:
[0059]若本節點緩存了所述DNS請求對應的授權信息,則利用本節點緩存的所述DNS請求對應的授權信息,對所述DNS請求進行應答。
[0060]可選地,所述授權信息包括訪問量超過訪問閾值的DNS解析記錄,和/或,重要域名的DNS解析記錄。
[0061]可選地,所述授權信息數據庫根據所述授權信息的相互關系,組成域名層次空間。
[0062]可選地,所述授權信息數據庫為互聯網域名層次的鏡像。
[0063]可選地,所述方法還包括:
[0064]在骨干網對所述指定區域的臨界區域出口處進行DNS數據報文的監聽,以確定所述第一節點是否出現DNS解析故障。