[發明專利]一種抗DNS死域攻擊的緩存方法及系統在審
| 申請號: | 201410392473.0 | 申請日: | 2014-08-11 |
| 公開(公告)號: | CN104144165A | 公開(公告)日: | 2014-11-12 |
| 發明(設計)人: | 蔣超;韓楓;吳愁 | 申請(專利權)人: | 互聯網域名系統北京市工程研究中心有限公司;北龍中網(北京)科技有限責任公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L29/12 |
| 代理公司: | 北京萬慧達知識產權代理有限公司 11111 | 代理人: | 張金芝;楊穎 |
| 地址: | 101408 北京市懷柔*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 dns 攻擊 緩存 方法 系統 | ||
技術領域
本發明屬于互聯網技術領域,更具體地說,是涉及一種抗DNS死域攻擊的緩存方法及系統。
背景技術
遞歸查詢系統中,遞歸服務器(本地DNS服務器)負責接受用戶(解析器)發送的域名解析請求,然后向各級權威域名服務器發出查詢請求,獲得用戶需要的查詢結果,最后返回給用戶。為減少查詢次數和提高查詢效率,遞歸服務器將所有查詢結果數據放入緩存。下次解析器向遞歸服務器查詢某個它所知的域名數據時,遞歸服務器只需直接向解析器返回該查詢結果。即使沒有將結果直接放入緩存中,遞歸服務器也可能已經獲得該域名所在區的權威域名服務器的標識,然后直接向它們查詢。
如圖1所示為以客戶端訪問網站www.163.com為例,給出了遞歸域名解析的完整流程,即首先查詢遞歸服務器有無此網站的IP地址,在沒有的情況下再查詢“DNS根服務器”,如沒有則再查詢“.com域服務器”,最后查詢“163.com域服務器”得到了需要的IP地址。
通過本地DNS服務器緩存中有“www.163.com”的IP地址,則可直接向用戶返回此IP,而不必執行Step2-Step7;若本地DNS服務器緩存中沒有存儲“www.163.com”的IP地址,但存儲了163.com域服務器地址,則DNS服務器可直接向163.com域服務器查詢“www.163.com”的IP地址,再將查詢結果返回給用戶,而不必執行Step2-Step5,提高了查詢效率。
遞歸服務器使用“往返時間(roundtrip?time,RTT)”來對同一區的權威域名服務器進行選擇。RTT定義為遠程域名服務器響應查詢的時間長度。每次遞歸服務器向遠程權威域名服務器發送查詢時,都啟動一個內部計時器。當它收到響應時就停止計時,并記錄該權威域名服務器響應時長RTT。
遞歸服務器總是選擇具有最小RTT的權威域名服務器來發送查詢。同一區的權威域名服務器的RTT最初都隨機給定一個比任何真實的RTT值都小的相同數值,在根據真實RTT值選擇之前,遞歸服務器可隨機選擇一個權威域名服務器發起查詢。遞歸服務器使用它成功收到響應的真實往返時間來更新緩存中的權威域名服務器的RTT值。但如果遞歸服務器在查詢時遇到了一個錯誤,該錯誤表明該權威域名服務器已經停機或不可達到,或者查詢超時,遞歸服務器將更新此權威域名服務器的RTT為:RTT+D,其中D為時間常量,并再次向該區具有最小RTT值的權威域名服務器發起查詢,循環往復,直至查詢成功或達到限制的最大查詢次數N。對最終不可達的查詢,返回“SERVFAIL”(服務器失敗)。
上述查詢機制仍存在缺陷。若由于網絡擁塞或者其他因素,某次域名解析請求被返回“SERVFAIL”,則表明該域名所屬區域的所有權威域名服務器都不可達。根據目前的查詢機制,當此時遞歸服務器收到屬于該域的域名查詢請求,它仍會向該域的權威服務器發起查詢,但顯而易見,結果都將是在經過N次查詢嘗試后最終被返回“SERVFAIL”。所以,在區域的所有權威域名服務器都不可達的情況下,當前的查詢機制存在冗余查詢。若一些別有用心的人利用該缺陷,發起大量屬于該域的域名查詢請求(死域攻擊),該缺陷的嚴重性會凸顯:大量網絡帶寬和遞歸服務器CPU資源將被占用,造成網絡擁堵甚至癱瘓,阻塞正常查詢,用戶得不到正確的查詢結果。
發明內容
為解決上述技術問題,本發明提供了一種抗DNS死域攻擊的緩存方法及系統,其中方法包括以下步驟:
1)客戶端向遞歸服務器提出域名查詢請求;
2)遞歸服務器按照遞歸流程查詢該域名所對應的權威服務器;如果查詢成功,則按遞歸流程進行后續查詢;如果查詢失敗,則選擇下一個權威服務器進行查詢;依次執行該流程,直到該區域的所有權威服務器都被遍歷一次;
3)重復2),遍歷查詢所有權威服務器指定次數都無法成功,則在失敗地址緩存模塊中添加該區域的信息并啟動等待計時,若在計時時間內收到該區域的查詢請求,直接返回服務器失敗的消息。
進一步地,還包括以下步驟:
4)定時結束后,所述遞歸服務器從地址選擇模塊中選擇該區域具有最小RTT的權威域名服務器進行查詢,若查詢失敗則將該權威域名服務器的RTT值增加一個特定的時間常量,并查詢此時RTT值最小的權威域名服務器。
進一步地,若查詢成功,則修改該權威域名服務器的RTT值,清除失敗地址緩存中該域名的記錄,并進行后續查詢。
進一步地,若查詢該區域所有的域名服務器一遍后仍失敗,則增大失敗地址緩存模塊中的該域名的等待計時時間,并重復步驟4)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于互聯網域名系統北京市工程研究中心有限公司;北龍中網(北京)科技有限責任公司,未經互聯網域名系統北京市工程研究中心有限公司;北龍中網(北京)科技有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410392473.0/2.html,轉載請聲明來源鉆瓜專利網。





