趙建超 馬 琰
前一段時(shí)間,本來(lái)就很脆弱的中國(guó)互聯(lián)網(wǎng)又被狠狠地折磨了一把。5月19日,江蘇、安徽等六省的網(wǎng)絡(luò)出現(xiàn)癱瘓,到底是什么原因造成的故障呢?據(jù)說(shuō)大家都認(rèn)為是非常簡(jiǎn)單的DNS域名解析故障。DNS還能引起網(wǎng)絡(luò)癱瘓?別逗了,這可能嗎?
看DNS,看上網(wǎng)那些事
先讓我們從DNS的原理出發(fā),看看這次故障的真正原因吧!當(dāng)在瀏覽器中輸入(http://www.baofeng.com),電腦是如何得到IP地址的呢?首先瀏覽器發(fā)現(xiàn)它是一個(gè)名字,于是電腦解析這個(gè)域名地址,把請(qǐng)求發(fā)送到默認(rèn)DNS服務(wù)器。DNS服務(wù)器會(huì)檢查自己的DNS緩存和記錄,以查看能否自行解析域名。如果運(yùn)營(yíng)商的服務(wù)器故意讓域名解析指向另外一個(gè)錯(cuò)誤的域名,這就是DNS劫持;如果設(shè)置為此域名不能解析,這就是網(wǎng)站的屏蔽;如果響應(yīng)時(shí)間過(guò)長(zhǎng)或者不穩(wěn)定,就會(huì)嚴(yán)重影響上網(wǎng)速度。如果服務(wù)器不能通過(guò)自身的緩存或者記錄解析域名,它將連接到其他服務(wù)器對(duì)該域名進(jìn)行解析。每個(gè)網(wǎng)站都有一個(gè)負(fù)責(zé)域名解析的服務(wù)器,如暴風(fēng)使用的域名解析服務(wù)器就是Dnspod,如果負(fù)責(zé)該域名解釋的服務(wù)器出現(xiàn)故障,此域名將無(wú)法解析。
小知識(shí)
DNS就是Domain Name System域名系統(tǒng)的簡(jiǎn)稱,它擔(dān)當(dāng)Internet的電話簿功能:將人易記可讀的域名翻譯為難記的IP地址。在我們電腦中運(yùn)行著DNS客戶端,當(dāng)在瀏覽器中輸入一個(gè)域名(如暴風(fēng)http://www.baofeng.com),就可以解析為數(shù)字地址(60.28.110.232),通過(guò)IP地址就可以訪問(wèn)到相應(yīng)的暴風(fēng)官方網(wǎng)站。
瞧Dnspod 解析“暴風(fēng)門(mén)”
在“暴風(fēng)”的這次事故中,如圖1所示黑客對(duì)“暴風(fēng)影音”軟件提供域名解析服務(wù)的域名解析服務(wù)器Dnspod實(shí)施了攻擊,所以造成“暴風(fēng)影音”軟件域名解析請(qǐng)求不成功。由于暴風(fēng)影音播放器的stormlive.exe進(jìn)程具有開(kāi)機(jī)自啟動(dòng)頻繁聯(lián)網(wǎng)的特性,這些客戶端的海量請(qǐng)求最終導(dǎo)致中國(guó)電信DNS服務(wù)器訪問(wèn)量突增,使得域名解析過(guò)慢或者不能解析,造成用戶無(wú)法通過(guò)域名訪問(wèn)網(wǎng)絡(luò)。這個(gè)過(guò)程就好比是目前已經(jīng)發(fā)生了堵車,可是這些客戶進(jìn)程就像一些傻子司機(jī),不斷向堵車地方前進(jìn),最終的結(jié)果自然是造成堵死。用戶覺(jué)得好像是訪問(wèn)的網(wǎng)站出了故障,其實(shí)電腦仍然在通過(guò)IP地址訪問(wèn)網(wǎng)站。 在此事件中,電信、暴風(fēng)、Dnspod都負(fù)有不可推卸的責(zé)任。當(dāng)發(fā)生攻擊的時(shí)候,如果運(yùn)營(yíng)商能夠像北京電信那樣及時(shí)屏蔽解析,如果Dnspod能及時(shí)防止攻擊,如果暴風(fēng)影音沒(méi)有設(shè)置這個(gè)自動(dòng)聯(lián)網(wǎng)的stormlive.exe進(jìn)程,哪怕客戶端請(qǐng)求域名解析失敗時(shí)不再像傻子司機(jī)一樣頻繁請(qǐng)求,這次網(wǎng)絡(luò)故障就不會(huì)發(fā)生。
莫后怕,避風(fēng)躲雨有妙招
上面大家已經(jīng)了解此次網(wǎng)絡(luò)癱瘓的原因,難道任由DNS這些問(wèn)題逞兇,浪費(fèi)寶貴的上網(wǎng)時(shí)間嗎?不,一定要找到相應(yīng)的對(duì)付方法,遠(yuǎn)離DNS故障,讓網(wǎng)絡(luò)暢通無(wú)阻。
1.更換DNS
更換DNS服務(wù)器的方法非常簡(jiǎn)單,對(duì)于寬帶撥號(hào)用戶來(lái)說(shuō),在“設(shè)置→網(wǎng)絡(luò)連接”中找到寬帶上網(wǎng)的連接,打開(kāi)網(wǎng)絡(luò)連接屬性,選擇Interner協(xié)議(TCP/IP)的屬性頁(yè),出現(xiàn)圖2所示的畫(huà)面。不要選擇自動(dòng)獲取DNS,而要選擇“使用下面的DNS服務(wù)器地址”。很多朋友在填入DNS服務(wù)器的時(shí)候,僅僅填寫(xiě)首選DNS服務(wù)器,這樣如果首選服務(wù)器失效,將導(dǎo)致域名無(wú)法解析。
小提示:如何選擇DNS服務(wù)器
在網(wǎng)絡(luò)可以搜到不少好用的DNS服務(wù)器地址,國(guó)外的DNS服務(wù)器可用的也非常多,推薦大家使用OpenDNS提供的DNS服務(wù)器。將首選DNS服務(wù)器和備用DNS服務(wù)器分別設(shè)置為208.67.222.222和208.67.220.220,即可使用OpenDNS,設(shè)置之后可以使用nslookup命令驗(yàn)證是否設(shè)置成功。使用openDNS不但避免了DNS劫持,還可以訪問(wèn)很多被電信聯(lián)通屏蔽的站點(diǎn),深受大家喜歡Gmail的等國(guó)外網(wǎng)站的訪問(wèn)也會(huì)更穩(wěn)定。
2.設(shè)置本地的HOST文件
不少朋友可能知道,在進(jìn)行DNS請(qǐng)求以前,Windows系統(tǒng)會(huì)先檢查自己的HOST文件中是否有相應(yīng)的解析記錄。如果有則調(diào)用這個(gè)IP地址映射,如果沒(méi)有,DNS服務(wù)器提出域名解析。假設(shè)Windows XP安裝在C:WINDOWS,那么HOST文件就在C:WINDOWSsystem32driversetc中。
可以把經(jīng)常訪問(wèn)的網(wǎng)站加入這個(gè)HOST文件,比如www.sina.com.cn。在HOST文件中添加如下內(nèi)容即可:202.108.33.32www.sina.com.cn
使用HOST文件,即使發(fā)生了由于DNS故障導(dǎo)致的網(wǎng)絡(luò)癱瘓,也可以訪問(wèn)HOST文件中解析的網(wǎng)站。由于節(jié)省了解析過(guò)程,速度更快。對(duì)HOST文件經(jīng)過(guò)一定的設(shè)置,還可以達(dá)到屏蔽不良網(wǎng)站的效果。除此之外,對(duì)付DNS問(wèn)題,還可以通過(guò)使用代理服務(wù)器、自設(shè)DNS服務(wù)器等方法解決。也歡迎大家提出更好的解決辦法。
火速鏈接:
HOST文件在防毒方面的應(yīng)用請(qǐng)參考2009年第12期47頁(yè)《網(wǎng)馬隨處“跑” 手動(dòng)如何“逃”》一文