1月21日下午3點,十幾封報警郵件,讓寇博驚出一身冷汗。
寇博是一家國內(nèi)流量排名前十的網(wǎng)站運維負責人,他和他的團24小時隊維護著這家日瀏覽量過億網(wǎng)站。十幾封報警郵件,意味著全國十幾省的用戶都出現(xiàn)無法訪問該網(wǎng)站的狀況。
“核心機房又出問題了?”寇博小聲默念著,趕忙從一個會議中退席,小跑著上樓,回到運維部的工作大廳。他桌面上的座機正刺耳著響著。“我是客服部的XX,有浙江的用戶反映咱們首頁上不去了.。。”“知道了。”
寇博立即掛斷了電話,朝著正在值班的同事大喊“怎么回事了?”“北京上海機房和CDN(網(wǎng)絡加速)反饋都正常,PING了下域名,IP地址的指向不對,可能是DNS的問題。”值班同事回答他。
“別查了,不是咱們的事,國內(nèi)所有.com域名的DNS都有問題。”正在刷微博的另一個同事告訴寇博,“你看DNSPod發(fā)微博了,說國內(nèi)所有通用頂級域的根出現(xiàn)異常,正聯(lián)系相關(guān)機構(gòu)協(xié)調(diào)處理。”
DNSPod是國內(nèi)第一大DNS解析服務提供商和域名托管商,管理著超過270萬域名??懿┩屏送蒲坨R,湊過去仔細盯著微博,一邊說“別大意,再給機房打電話查一下。”
幾乎與此同時,國內(nèi)最大的數(shù)據(jù)中心之一的北京機房負責人劉碩也正高度緊張。當他接通新浪科技的電話時,他背后的座機鈴聲響成一片。“是的,我們已經(jīng)監(jiān)測到問題了,很多網(wǎng)站也向我們反饋了,我們馬上開會研究應對。”他匆匆的掛斷了電話。
“用戶在微博上把我們罵死了。”寇博的同事告訴他。他笑著對新浪科技說,“我們無能為力,是全網(wǎng)出現(xiàn)的系統(tǒng)性問題,只能告訴用戶直接用IP地址訪問我們。”
這次故障是怎么回事?
“所有連接在互聯(lián)網(wǎng)上的設備都必須有一個IP地址,就像每個房子都有地址一樣,這樣才能讓別人找到。”寇博開始向新浪科技解釋起來。“這個IP地址是一段數(shù)字,例如120.84.21.23,但是用戶上網(wǎng)要記這段數(shù)字,太麻煩了,所以有了域名。”
域名就是IP地址的另一種體現(xiàn)方法,而DNS就是將域名翻譯成IP地址的翻譯器。比如,用戶在瀏覽器中輸入facebook.com,瀏覽器就會向用戶最近的DNS服務器詢問,“facebook.com對應的IP地址是什么?”
這個最近的DNS服務器一般是當?shù)仉娦胚\營商的服務器。如果這個服務器不知道,他就會向上一級請求,一般是運營商的全國性DNS服務器。如果這個全國性DNS還不知道會向全球DNS服務器查詢。
這一級一級的層級中,最高一級是全球的13臺根服務器,名字分別為“A”至“M”,其中10臺設置在美國,另外各有一臺設置于英國、瑞典和日本。
為了防止上述服務器出現(xiàn)故障造成全球性訪問異常,目前世界上很多國家都設有鏡像。我們國家在全網(wǎng)的出口也設有頂級的域名服務器。“這次網(wǎng)絡出現(xiàn)異常是這個服務器出現(xiàn)了解析錯誤。”寇博解釋說。
為什么有的人正常,有的人異常?
這是因為為了加快用戶訪問速度,整個系統(tǒng)設有多級緩存,包括瀏覽器緩存、系統(tǒng)緩存、路由器緩存、DNS服務器緩存等等。
當用戶訪問一個網(wǎng)站時,其瀏覽器會自動記錄域名對應的IP一段時間,這樣用戶在第二次進入該網(wǎng)站時,瀏覽器就不必向上一層級反復查詢,直接就可以告知用戶結(jié)果。同樣的,用戶的電腦、路由器和DNS服務器都會設置一定的緩存,當然緩存是有時間限制的,到期就要向上級服務器查詢最新的記錄。
當頂級根域名服務器出現(xiàn)故障時,用戶的訪問不會馬上中斷,因為各級緩存還在。當緩存時間到后,他們會向上一級重新查詢,這時根服務器的錯誤反饋才會生效,導致用戶訪問異常。然而這個緩存時間,因設置不同,差異很大。有的緩存時間只有30秒,有的緩存時間長達12小時。
截至當日下午4點,全國根服務器的解析陸續(xù)恢復正常。同樣的道理,出現(xiàn)異常的用戶也不會馬上恢復正常,因為錯誤的記錄仍然在緩存中,最長可能需要等待24個小時,緩存到期后,正確的記錄才會生效。
而對于一個大型網(wǎng)站來說,其內(nèi)容一般不是全都放置在同一域名下。比如圖片、數(shù)據(jù)庫一般都采取不同的域名,當有的域名緩存正確,有的域名緩存錯誤時,就會出現(xiàn)頁面加載出來,而圖片出不來,或者圖片出來,文字數(shù)據(jù)錯亂的情況。
神秘IP地址引發(fā)黑客疑云
隨著故障陸續(xù)恢復,數(shù)據(jù)中心的劉碩也松了一口氣。他向新浪科技介紹說,這次事故的原因是根域名服務器被污染,域名解析請求都被指向“65.49.2.178”這個IP地址。
不過,據(jù)劉碩對多個域名的測試發(fā)現(xiàn),F(xiàn)acebook、Twitter等國外域名解析正常,只是國內(nèi)域名遭到污染。即便如此,受到影響的范圍也是空前的,包括百度、新浪、騰訊在內(nèi)的國內(nèi)絕大多數(shù)網(wǎng)站出現(xiàn)訪問異常,根域名服務器故障持續(xù)將近1小時。
據(jù)粗略估算,受到影響的國內(nèi)用戶超過2億,平均受影響的時間約在3小時左右。截至21日晚間1哦點,全國仍有十余個地區(qū)受DNS估值影響,包括貴州電信、河南電信、香港新世界、江蘇電信、北京電信通等。
國內(nèi)漏洞報告平臺“烏云”稱,65.49.2.178這個IP位于國外,有證據(jù)表明該IP所處于的網(wǎng)絡有過發(fā)送垃圾郵件及其他有政治目的的黑客活動,不排除此次攻擊為黑客所為。
金山的一位安全專家稱,經(jīng)查詢65.49.2.178的信息,發(fā)現(xiàn)該IP位于美國北卡羅萊納州卡里鎮(zhèn)DynamicInternetTechnology公司。“大量中國知名IT公司的域名被解析到美國某公司,從目前看該事件極可能是黑客攻擊行為。”該專家說。
去年8月25日凌晨,中國.cn域名解析出現(xiàn)大規(guī)模解析故障。中國互聯(lián)網(wǎng)絡信息中心后來透露,當日零時許,國家域名解析節(jié)點受到拒絕服務攻擊,經(jīng)處置,至2時許服務器恢復正常,這是有史以來.cn域名遭受的最大規(guī)模拒絕服務攻擊。
不過,劉碩和另一位網(wǎng)絡安全專家都認為,這次DNS污染事件影響之廣、范圍之大在國內(nèi)尚屬首例,遠遠超出一般黑客的能力范圍。“很可能與主干網(wǎng)絡的設置調(diào)整有關(guān)。”上述網(wǎng)絡安全專家說。