DNS服務(wù)器是一個(gè)外行聽起來比較專業(yè)的詞匯,大部分只是聽說過DNS,卻不知道DNS服務(wù)器是什么鬼;即便知道了DNS服務(wù)器是什么東西,卻也很難明白DNS服務(wù)器背后的“翻譯邏輯”是什么,DNS服務(wù)器又能幫我們做些什么,還有如何防止惡意攻擊、保護(hù)DNS服務(wù)器……今天,筆者就帶大家來認(rèn)識(shí)一下這位喜歡躲在小黑屋中的“翻譯官”:DNS服務(wù)器。
DNS服務(wù)器背知識(shí)掃盲:DNS服務(wù)器是什么 背后的秘密
電腦聯(lián)網(wǎng)必備技能——DNS
相信大多數(shù)人對(duì)DNS的初識(shí)都和筆者一樣,來自于大學(xué)時(shí)候在宿舍給筆記本聯(lián)網(wǎng),一個(gè)月20塊,交完網(wǎng)費(fèi),學(xué)校會(huì)給你一個(gè)IP地址,然后你自己設(shè)置聯(lián)網(wǎng)就好了。
這聽起來很簡(jiǎn)單,但是很多妹子真的對(duì)泛IT知識(shí)一無所知(擼韓劇、逛淘寶才是他們的專業(yè)),于是大學(xué)四年,筆者擔(dān)任了同學(xué)、學(xué)妹、甚至部分學(xué)姐的網(wǎng)絡(luò)問題相關(guān)工作,后來即便不用學(xué)校相關(guān)部門給地址,都能推算出來……
電腦DNS服務(wù)器地址設(shè)置
正所謂實(shí)踐出真知,筆者對(duì)于IPv4地址、默認(rèn)網(wǎng)關(guān)、DNS等名詞也是在實(shí)際應(yīng)用中學(xué)習(xí)的。但是,從專業(yè)概念來講,DNS又是什么呢?
DNS是Domain Name Service的縮寫,翻譯過來就是計(jì)算機(jī)域名服務(wù)器(也有擴(kuò)寫成Domain Name System,譯為計(jì)算機(jī)域名系統(tǒng))。而之所以本文稱DNS服務(wù)器為“翻譯官”,是因?yàn)镈NS是進(jìn)行域名(domain name)和與之相對(duì)應(yīng)的IP地址(IP address)轉(zhuǎn)換的服務(wù)器。雖然我們每天都會(huì)用到DNS服務(wù)器,但是卻很少有人知道它,足以體現(xiàn)DNS容易被視而不見的特性了。
也就是說,在Internet上域名與IP地址之間是一一對(duì)應(yīng)的,域名雖然便于人們記憶,但機(jī)器之間只能互相認(rèn)識(shí)IP地址,它們之間的轉(zhuǎn)換工作稱為域名解析,而域名解析需要由專門的域名解析服務(wù)器來完成,這就是DNS域名服務(wù)器。
附錄:
名稱類型說明 示例根域 一般認(rèn)為全球共有13臺(tái)根邏輯域名服務(wù)器單個(gè)句點(diǎn)(.)或句點(diǎn)用于末尾的名稱 頂級(jí)域 用來指示某個(gè)國家/地區(qū)或組織使用的名稱的類型名稱 .com 第二層域 個(gè)人或組織在網(wǎng)上使用的注冊(cè)名稱 pc841.com 子域 已注冊(cè)的二級(jí)域名派生的域名 www.pc841.com DNS域名稱cn/rucomneteduMilgov 組織類型中國/俄羅斯商業(yè)公司網(wǎng)絡(luò)公司教育機(jī)構(gòu)軍事政府機(jī)構(gòu)非軍事政府機(jī)構(gòu) 2DNS服務(wù)器背后的“翻譯邏輯”
說白了,DNS服務(wù)器起到的作用是把我們輸入的字符域名轉(zhuǎn)換為主機(jī)的IP地址。計(jì)算機(jī)在網(wǎng)絡(luò)上進(jìn)行通訊時(shí)只能識(shí)別如“201.59.72.14”之類的IP地址(此處為任意IP地址舉例),而不能認(rèn)識(shí)域名(如:pc841.com)。但是,我們打開瀏覽器,在地址欄中輸入字符域名后,就能看到所需要的頁面,就是因?yàn)橛幸粋(gè)叫“DNS服務(wù)器”的存在自動(dòng)把我們的域名“翻譯”成了相應(yīng)的IP地址,然后調(diào)出IP地址所對(duì)應(yīng)的網(wǎng)頁。也正因此,也有人將DNS服務(wù)器比喻成“翻譯官”和“電話簿”。
就像大多數(shù)同傳大神一樣,DNS服務(wù)器這個(gè)翻譯官也常常躲在一個(gè)小黑屋中工作,不同于同傳翻譯人員使用一支筆、一個(gè)本和大腦來翻譯,DNS服務(wù)器的翻譯邏輯似乎有些不同,畢竟他們只能是0和1的組合。
如果簡(jiǎn)單來講,可以將DNS分為C/S(Client/Server,客戶機(jī)/服務(wù)器)兩種模式,Client扮演詢問角色,由Client向Server詢問Domain Name(域名),Server負(fù)責(zé)給出域名對(duì)應(yīng)的真正IP地址。
具體而言,要分八步走(注,為實(shí)現(xiàn)冗余和負(fù)載均衡,部分地址解析結(jié)果有可能是一個(gè),也可能是多個(gè),本文均以一個(gè)為例)。
1、客戶端發(fā)出請(qǐng)求:我需要訪問www.pc841.com,請(qǐng)告訴我它得IP地址。
2、本地DNS服務(wù)器(向DNS根服務(wù)器)分發(fā)需求:緩存中沒有pc841.com的記錄,向d.root-servers.net.請(qǐng)求域名對(duì)應(yīng)IP地址。
3、DNS根服務(wù)器給出范圍:該域名由.com.cn區(qū)域管理,給你.com.cn域服務(wù)器地址ns.cernet.net.
4、本地DNS服務(wù)器(向.com.cn域服務(wù)器)分發(fā)需求:域名pc841.com對(duì)應(yīng)的IP地址是多少?
5、.com.cn域服務(wù)器給出范圍:負(fù)責(zé)zol.com.cn的域服務(wù)器應(yīng)該知道IP地址,你去問它。
6、本地DNS服務(wù)器(向pc841.com域服務(wù)器)分發(fā)需求:請(qǐng)問域名pc841.com對(duì)應(yīng)的IP地址是多少?
7、pc841.com域服務(wù)器給出答案:經(jīng)查詢得知,該域名對(duì)應(yīng)的IP地址是123.101.57.11
8、本地DNS服務(wù)器(向網(wǎng)絡(luò)客戶端)回復(fù)答案:域名pc841.com對(duì)應(yīng)的IP地址是123.101.57.11
訪問電腦百事網(wǎng)解析全過程
一般來講,DNS服務(wù)器一般會(huì)在獲得域名對(duì)應(yīng)IP地址之后,將該IP地址與域名對(duì)應(yīng)關(guān)系記入緩存中,以備下次別的用戶查詢時(shí)可以直接返回結(jié)果,以加快網(wǎng)絡(luò)訪問速度。
完成以上8步,正向解析完成,除了正向解析(域名轉(zhuǎn)換成IP地址的操作)之外,還有反向解析,即通過IP地址轉(zhuǎn)換成域名的操作,這里再不做詳盡解釋。
3DNS可以幫你優(yōu)化網(wǎng)速和查漏洞
除了基本的翻譯工作之外,DNS還能為我們帶來哪些優(yōu)勢(shì)呢?今天,筆者就向大家簡(jiǎn)單介紹三種DNS能夠告訴我們的事兒。
一、檢測(cè)垃圾郵件和Botnet僵尸網(wǎng)絡(luò)
檢測(cè)垃圾郵件
眾所周知,Botnet僵尸網(wǎng)絡(luò)就是許多臺(tái)被惡意代碼感染、控制的與互聯(lián)網(wǎng)相連接的計(jì)算機(jī)。而當(dāng)一個(gè)運(yùn)行一個(gè)垃圾郵件的時(shí)候,會(huì)有大量的郵件被發(fā)送到一個(gè)預(yù)定的域名列表里;就導(dǎo)致一個(gè)已經(jīng)不存在的域名,被高頻率的訪問。另外,在圖示一圾郵件和Botnet僵尸網(wǎng)絡(luò),并迅速識(shí)別受損及其,解決問題。
二、優(yōu)化網(wǎng)絡(luò)速度,降低網(wǎng)絡(luò)成本
DNS數(shù)據(jù)可以告訴我們是否出現(xiàn)網(wǎng)絡(luò)堵塞,并識(shí)別網(wǎng)絡(luò)堵塞的原因。上圖是未經(jīng)過濾的圖片,根據(jù)顏色的不同,可以看出網(wǎng)絡(luò)速度的不同。繼續(xù)研究的話你可以調(diào)節(jié)DNS服務(wù)器配置,改善網(wǎng)絡(luò)速度,減少在某些應(yīng)用程序上的等待時(shí)間,甚至有可能節(jié)省網(wǎng)絡(luò)成本。
三、發(fā)現(xiàn)軟件漏洞
正常的DNS應(yīng)該是穩(wěn)定的,但如果你發(fā)現(xiàn)Servfail響應(yīng)異常,那可能意味著出現(xiàn)了網(wǎng)絡(luò)漏洞。它或者意味著軟件漏洞,或這意味著你的服務(wù)器配置相對(duì)較差,可能會(huì)增加你的風(fēng)險(xiǎn)。
惡意DNS劫持
Google DNS服務(wù)器平均每天處理超過1500億個(gè)查詢。在2014年3月17日,根據(jù)網(wǎng)絡(luò)監(jiān)測(cè)公司BGPMon數(shù)據(jù),Google的公開DNS服務(wù)器IP 8.8.8.8被劫持到了委內(nèi)瑞拉和巴西超過22分鐘。類似這樣的事件時(shí)有發(fā)生,我們所需要做的就是利用一切手段,防止這樣的事件發(fā)生。
長(zhǎng)久以來,DNS一直未作為分析網(wǎng)絡(luò)問題的標(biāo)準(zhǔn),甚至可能性。但是如今根據(jù)相關(guān)測(cè)試我們可以看出,DNS可以告訴我們的還有很多。比如檢測(cè)垃圾郵件和Botnet僵尸網(wǎng)絡(luò);優(yōu)化網(wǎng)絡(luò)速度,降低網(wǎng)絡(luò)成本和發(fā)現(xiàn)軟件漏洞。
盡管DNS看起來優(yōu)勢(shì)多多,但是DNS域名服務(wù)器安全問題由來已久,比如2009年的519事件,因?yàn)镈NSPOD用戶域名相互攻擊造成DNSPOD宕機(jī),大量請(qǐng)求壓力讓運(yùn)營(yíng)商服務(wù)器受到了影響,導(dǎo)致南方六省斷網(wǎng)、服務(wù)器崩潰。后來的DNS域名被篡改、DDOS攻擊、內(nèi)部威脅等問題也持續(xù)存在。
如何防止惡意攻擊 保護(hù)DNS服務(wù)器
一般來講,只要不是網(wǎng)絡(luò)服務(wù)供應(yīng)商受到重大攻擊,企業(yè)網(wǎng)絡(luò)完全陷入癱瘓的可能性不大。而企業(yè)DNS服務(wù)器會(huì)面臨的漏洞主要包括:DNS IPv6漏洞、公用DNS服務(wù)器上的漏洞、內(nèi)部威脅和社會(huì)工程學(xué)四大方面。而要提高企業(yè)DNS服務(wù)器安全問題也十分簡(jiǎn)單。
1、控制入口
即對(duì)主要網(wǎng)絡(luò)資源訪問權(quán)限進(jìn)行管控。從DNS服務(wù)器從主力DNS服務(wù)器接收這些區(qū)域文件的只讀拷貝。比如,你可以配置企業(yè)的DNS服務(wù)器,禁止區(qū)域傳輸請(qǐng)求,或者僅允許針對(duì)組織內(nèi)特定服務(wù)器進(jìn)行區(qū)域傳輸,以此來進(jìn)行安全防范;在基于Windows的DNS服務(wù)器中,你也應(yīng)該在DNS服務(wù)器相關(guān)的文件系統(tǒng)入口處設(shè)置訪問控制,這樣只有需要訪問的帳戶才能夠閱讀或修改這些文件。
2、做好Plan B
幾乎在所有企業(yè)級(jí)IT應(yīng)用場(chǎng)景中冗余和備份都是不可缺少的一部分,所以做好災(zāi)難備份和恢復(fù)、做好風(fēng)險(xiǎn)評(píng)估方面就顯得異常重要。此外,在管理方面,企業(yè)還需要制定相關(guān)規(guī)范,遇到問題形成快速反應(yīng)機(jī)制。
3、專業(yè)支持
俗話說,網(wǎng)絡(luò)安全工作要靠三分技術(shù)、七分管理,所謂管理就是控制入口、做好備用方案,而三分技術(shù)才是企業(yè)穩(wěn)定運(yùn)行的基礎(chǔ)。這就需要企業(yè)找到專業(yè)的軟硬件服務(wù)器供應(yīng)商,匹配專業(yè)的技術(shù)人員,建立一個(gè)健康的IT生產(chǎn)環(huán)境,保證DNS服務(wù)器及企業(yè)網(wǎng)絡(luò)安全。
根域解析故障
對(duì)于普通消費(fèi)者而言,除了遇到類似2014年1月21日中國互聯(lián)網(wǎng)根域名服務(wù)器(DNS)故障這種所有通用頂級(jí)域名的根域解析出現(xiàn)異常,導(dǎo)致大量網(wǎng)站域名解析不正常,網(wǎng)站無法打開的情況之外,大多數(shù)時(shí)候,DNS服務(wù)器只是躲在小黑屋中,幫助我們實(shí)現(xiàn)正向/反向解析的翻譯官,似乎沒什么大用。但是正因?yàn)榇罅磕瑹o名的DNS服務(wù)器在刻苦工作,才有了我們發(fā)達(dá)的互聯(lián)網(wǎng)生態(tài)。