DNS
dns多義詞。多用于計(jì)算機(jī)領(lǐng)域,DNS 是域名系統(tǒng) (Domain Name System) 的縮寫;另在化工領(lǐng)域、運(yùn)動(dòng)領(lǐng)域及流體力學(xué)領(lǐng)域有其他含義。目錄 ,戶友好的名稱查
dns
多義詞。多用于計(jì)算機(jī)領(lǐng)域,DNS 是域名系統(tǒng) (Domain Name System) 的縮寫;另在化工領(lǐng)域、運(yùn)動(dòng)領(lǐng)域及流體力學(xué)領(lǐng)域有其他含義。
目錄
戶友好的名稱查找計(jì)算機(jī)和服務(wù)。當(dāng)用戶在應(yīng)用程序中輸入 DNS 名稱時(shí),DNS 服務(wù)可以將此名稱解析為與之相關(guān)的其他信息,如 IP 地址。因?yàn)椋阍谏暇W(wǎng)時(shí)輸入的網(wǎng)址,是通過域名解析系統(tǒng)解析找到了相對(duì)應(yīng)的IP 地址,這樣才能上網(wǎng)。其實(shí),域名的最終指向是IP 。
在IPV4中IP 是由32位二進(jìn)制數(shù)組成的,將這32位二進(jìn)制數(shù)分成4組每組8個(gè)二進(jìn)制數(shù),將這8個(gè)二進(jìn)制數(shù)轉(zhuǎn)化成十進(jìn)制數(shù),就是我們看到的IP 地址,其范圍是在0~255之間。因?yàn)椋?個(gè)二進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制數(shù)的最大范圍就是0~255。現(xiàn)在已開始試運(yùn)行、將來必將代替IPv4的IPV6中,將以128位二進(jìn)制數(shù)表示一個(gè)IP 地址。
大家都知道,當(dāng)我們?cè)谏暇W(wǎng)的時(shí)候,通常輸入的是網(wǎng)址,其實(shí)這就是一個(gè)域名,而我們計(jì)算機(jī)網(wǎng)絡(luò)上的計(jì)算機(jī)彼此之間只能用IP 地址才能相互識(shí)別。再如,我們?nèi)ヒ籛EB 服務(wù)器中請(qǐng)求一WEB 頁面,我們可以在瀏覽器中輸入網(wǎng)址或者是相應(yīng)的IP 地址,例如我們要上新浪網(wǎng),我們可以在IE 的地址欄中輸入網(wǎng)址,也可輸入IP 地址,但是這樣子的IP 地址我們記不住或說是很難記住,所以有了域名的說法,這樣的域名會(huì)讓我們?nèi)菀椎挠涀 ?/p>
DNS :Domain Name System 域名管理系統(tǒng) 域名是由圓點(diǎn)分開一串單詞或縮寫組成的,每一個(gè)域名都對(duì)應(yīng)一個(gè)惟一的IP 地址,這一命名的方法或這樣管理域名的系統(tǒng)叫做域名管理系統(tǒng)。
申請(qǐng)了DNS 后,客戶可以自己為域名作解析,或增設(shè)子域名??蛻羯暾?qǐng)DNS 時(shí),建議客戶一次性申請(qǐng)兩個(gè)。
歷史
DNS 最早于1983年由保羅·莫卡派喬斯(Paul Mockapetris)發(fā)明;原始的技術(shù)規(guī)范在882號(hào)因特網(wǎng)標(biāo)準(zhǔn)草案(RFC 882)中發(fā)布。1987年發(fā)布的第1034和1035號(hào)草案修正了DNS 技術(shù)規(guī)范,并廢除了之前的第882和883號(hào)草案。在此之后對(duì)因特網(wǎng)標(biāo)準(zhǔn)草案的修改基本上沒有涉及到DNS 技術(shù)規(guī)范部分的改動(dòng)。
早期的域名必須以英文句號(hào)“.”結(jié)尾 ,這樣DNS 才能夠進(jìn)行域名解析。如今DNS 服務(wù)器已經(jīng)可以自動(dòng)補(bǔ)上結(jié)尾的句號(hào)。
當(dāng)前,對(duì)于域名長度的限制是63個(gè)字符,其中不包括www. 和.com 或者其他的擴(kuò)展名。域名同時(shí)也僅限于ASCII 字符的一個(gè)子集,這使得很多其他語言無法正確表示他們的名字和單詞?;赑unycode 碼的IDNA 系統(tǒng),可以將Unicode 字符串映射為有效的DNS 字符集,這已經(jīng)通過了驗(yàn)證并被一些注冊(cè)機(jī)構(gòu)作為一種變通的方法所采納。
位置
,提供DNS 的是計(jì)算機(jī),是安裝了DNS 服務(wù)器端軟件的計(jì)算機(jī)。服務(wù)器端軟件既可以是基于類Unix 操作系統(tǒng),也可以是基于Windows 操作系統(tǒng)的。裝好DNS 服務(wù)器軟件后,您就可以在您指定的位置創(chuàng)建區(qū)域文件了,所謂區(qū)域文件就是包含了此域中名字到IP 地址解析記錄的一個(gè)文件(如文件名可能是這個(gè)文件的內(nèi)容是這樣的:
primary name server = dns2(主服務(wù)器的主機(jī)名是 )
serial = 2007042913 (當(dāng)前序列號(hào)是2007042913。這個(gè)序列號(hào)的作用是當(dāng)輔域名服務(wù)器來copy 時(shí)候這個(gè)文件時(shí),如果號(hào)碼增加了就copy ) refresh = 10800 (3 hours) (輔域名服務(wù)器每隔3小時(shí)查詢一個(gè)主服務(wù)器)
retry = 3600 (1 hour) (當(dāng)輔域名服務(wù)試圖在主服務(wù)器上查詢更時(shí),而連接失敗了,輔域名服務(wù)器每隔1小時(shí)訪問主域名服務(wù)器)
expire = 604800 (7 days) (輔域名服務(wù)器在向主服務(wù)更新失敗后,7天后刪除中的記錄。)
default TTL = 3600 (1 hour) (緩存服務(wù)器保存記錄的時(shí)間是1小時(shí)。也就是告訴202.96.209.5保存域的解析記錄為1小時(shí))
實(shí)現(xiàn)方法
無論您是通過linux 還是windows 搭建dns 服務(wù)器,原理都是一致的。 您可以把DNS 服務(wù)器配置成以下3類之一:
1、主DNS 服務(wù)器。
2、輔DNS 服務(wù)器。
3、緩存DNS 服務(wù)器。
目前國際域名的DNS 必須在國際域名注冊(cè)商處注冊(cè),國內(nèi)域名的DNS 必須在CNNIC 注冊(cè),注冊(cè)支持解析英文域名和中文域名的dns 要分別注冊(cè):
(1)步驟:選擇做為DNS 后綴的域名---創(chuàng)建dns 服務(wù)器---選擇是在國際注冊(cè)還是國內(nèi)注冊(cè)-申請(qǐng)--交付費(fèi)用
(2)費(fèi)用:約75元/個(gè)(一次性)
(3)條件:如果注冊(cè)國際DNS 服務(wù)器的,dns 服務(wù)器的名稱必須是在具有條件的公司注冊(cè)的國際英文域名才能注冊(cè),有獨(dú)立IP 地址,DNS 服務(wù)器域名前的前綴最好是dns. 、ns. 等
DNS 服務(wù)器
現(xiàn)在一般國內(nèi)的域名注冊(cè)商,提供DNS 解析服務(wù)是免費(fèi)的,但國外的注冊(cè)商很多是DNS 解析服務(wù)是收費(fèi)的。
在系統(tǒng)中提交注冊(cè)DNS 的申請(qǐng),款到后注冊(cè)的時(shí)間為2個(gè)工作日左右。 修改DNS 服務(wù)器
(1)條件:要更改為合法的DNS 。
如果要查詢DNS 是否為合法的DNS ,請(qǐng)點(diǎn)擊:DNS查詢界面
,輸入DNS 服務(wù)器的名稱或者IP 地址,選中第三個(gè)選項(xiàng)Nameserver ,查詢?nèi)绻樵兂鲇蠨NS 注冊(cè)的信息,如注冊(cè)商,名稱對(duì)應(yīng)的IP 地址,則這個(gè)DNS 是合法的。
(2)修改方法:通過具有條件的公司注冊(cè)的國際域名變更DNS :用戶可通過和提供服務(wù)的該公司進(jìn)行協(xié)商(大致步驟為:提出申請(qǐng)并提交相關(guān)材料后該業(yè)務(wù)公司會(huì)在48小時(shí)左右完成變更) 。
國際英文域名、國內(nèi)英文域名可以修改DNS ,這項(xiàng)服務(wù)是免費(fèi)的。 使用免費(fèi)的DNS
國內(nèi)外有不少提供免費(fèi)DNS 服務(wù)的提供商,其中國內(nèi)著名的有IIDNS ,DNSPod 和OpenDns 等
解析故障
在實(shí)際應(yīng)用過程中可能會(huì)遇到DNS 解析錯(cuò)誤的問題,就是說當(dāng)我們?cè)L問一個(gè)域名時(shí)無法完成將其解析到IP 地址的工作,而直接輸入網(wǎng)站IP 卻可以正常訪問,這就是因?yàn)镈NS 解析出現(xiàn)故障造成的。這個(gè)現(xiàn)象發(fā)生的機(jī)率比較大,所以本文將從零起步教給各位讀者一些基本的排除DNS 解析故障的方法。
什么是DNS 解析故障?
一般來說像我們?cè)L問的地址都叫做域名,而眾所周知網(wǎng)絡(luò)中的任何一個(gè)主機(jī)都是IP 地址來標(biāo)識(shí)的,也就是說只有知道了這個(gè)站點(diǎn)的IP 地址才能夠成功實(shí)現(xiàn)訪問操作。
不過由于IP 地址信息不太好記憶,所以網(wǎng)絡(luò)中出現(xiàn)了域名這個(gè)名字,在訪問時(shí)我們這需要輸入這個(gè)好記憶的域名即可,網(wǎng)絡(luò)中會(huì)存在著自動(dòng)將相應(yīng)的域名解析成IP 地址的服務(wù)器,這就是DNS 服務(wù)器。能夠?qū)崿F(xiàn)DNS 解析功能的機(jī)器可以是自己的計(jì)算機(jī)也可以是網(wǎng)絡(luò)中的一臺(tái)計(jì)算機(jī),不過當(dāng)DNS 解析出現(xiàn)錯(cuò)誤,例如把一個(gè)域名解析成一個(gè)錯(cuò)誤的IP 地址,或者根本不知道某個(gè)域名對(duì)應(yīng)的IP 地址是什么時(shí),我們就無法通過域名訪問相應(yīng)的站點(diǎn)了,這就是DNS 解析故障。
出現(xiàn)DNS 解析故障最大的癥狀就是訪問站點(diǎn)對(duì)應(yīng)的IP 地址沒有問題,然而訪問他的域名就會(huì)出現(xiàn)錯(cuò)誤。
當(dāng)我們的計(jì)算機(jī)出現(xiàn)了DNS 解析故障后不要著急,解決的方法也很簡單。
(1)用nslookup(網(wǎng)路查詢) 來判斷是否真的是DNS 解析故障:
,要想百分之百判斷是否為DNS 解析故障就需要通過系統(tǒng)自帶的NSLOOKUP 來解決了。
第一步:確認(rèn)自己的系統(tǒng)是windows 2000和windows xp以上操作系統(tǒng),然后通過“開始->運(yùn)行->輸入CMD”后回車進(jìn)入命令行模式。 第二步:輸入nslookup 命令后回車,將進(jìn)入DNS 解析查詢界面。 第三步:命令行窗口中會(huì)顯示出當(dāng)前系統(tǒng)所使用的DNS 服務(wù)器地址,例如筆者的DNS 服務(wù)器IP 為202.106.0.20。
第四步:接下來輸入你無法訪問的站點(diǎn)對(duì)應(yīng)的域名。假如不能訪問的話,那么DNS 解析應(yīng)該是不能夠正常進(jìn)行的。我們會(huì)收到DNS request timed out ,timeout was 2 seconds的提示信息。這說明我們的計(jì)算機(jī)確實(shí)出現(xiàn)了DNS 解析故障。
小提示:如果DNS 解析正常的話,會(huì)反饋回正確的IP 地址。
(2)查詢DNS 服務(wù)器工作是否正常:
這時(shí)候我們就要看看自己計(jì)算機(jī)使用的DNS 地址是多少了,并且查詢他的運(yùn)行情況。
第一步:確認(rèn)自己的系統(tǒng)是windows 2000和windows xp以上操作系統(tǒng),然后通過“開始->運(yùn)行->輸入CMD”后回車進(jìn)入命令行模式。 第二步:輸入ipconfig /all命令來查詢網(wǎng)絡(luò)參數(shù)。
第三步:在ipconfig /all顯示信息中我們能夠看到一個(gè)地方寫著DNS SERVERS ,這個(gè)就是我們的DNS 服務(wù)器地址。例如筆者的是202.106.0.20和202.106.46.151。從這個(gè)地址可以看出是個(gè)外網(wǎng)地址,如果使用外網(wǎng)DNS 出現(xiàn)解析錯(cuò)誤時(shí),我們可以更換一個(gè)其他的DNS 服務(wù)器地址即可解決問題。 第四步:如果在DNS 服務(wù)器處顯示的是自己公司的內(nèi)部網(wǎng)絡(luò)地址,那么說明你們公司的DNS 解析工作是交給公司內(nèi)部的DNS 服務(wù)器來完成的,這時(shí)我們需要檢查這個(gè)DNS 服務(wù)器,在DNS 服務(wù)器上進(jìn)行nslookup 操作看是否可以正常解析。解決DNS 服務(wù)器上的DNS 服務(wù)故障,一般來說問題也能夠解決。
(3)清除DNS 緩存信息法:
當(dāng)計(jì)算機(jī)對(duì)域名訪問時(shí)并不是每次訪問都需要向DNS 服務(wù)器尋求幫助的,一般來說當(dāng)解析工作完成一次后,該解析條目會(huì)保存在計(jì)算機(jī)的DNS 緩存列表中,如果這時(shí)DNS 解析出現(xiàn)更改變動(dòng)的話,由于DNS 緩存列表信息沒有改變,在計(jì)算機(jī)對(duì)該域名訪問時(shí)仍然不會(huì)連接DNS 服務(wù)器獲取最新解析信息,會(huì)根據(jù)自己計(jì)算機(jī)上保存的緩存對(duì)應(yīng)關(guān)系來解析,這樣就會(huì)出現(xiàn)DNS 解析故障。這時(shí)我們應(yīng)該通過清除DNS 緩存的命令來解決故障。 第一步:通過“開始->運(yùn)行->輸入CMD ”進(jìn)入命令行模式。
第二步:在命令行模式中我們可以看到在ipconfig /?中有一個(gè)名為/flushdns的參數(shù),這個(gè)就是清除DNS 緩存信息的命令。
,第三步:執(zhí)行ipconfig /flushdns命令,當(dāng)出現(xiàn)“successfully flushed the dns resolver cache”的提示時(shí)就說明當(dāng)前計(jì)算機(jī)的緩存信息已經(jīng)被成功清除。
第四步:接下來我們?cè)僭L問域名時(shí),就會(huì)到DNS 服務(wù)器上獲取最新解析地址,再也不會(huì)出現(xiàn)因?yàn)橐郧暗木彺嬖斐山馕鲥e(cuò)誤故障了。
(4)修改HOSTS (主機(jī))文件法:
修改HOSTS 法就是把HOSTS 文件中的DNS 解析對(duì)應(yīng)關(guān)系進(jìn)行修改,從而實(shí)現(xiàn)正確解析的目的。因?yàn)樵诒镜赜?jì)算機(jī)訪問某域名時(shí)會(huì)首先查看本地系統(tǒng)中的HOSTS 文件,HOSTS 文件中的解析關(guān)系優(yōu)先級(jí)大于DNS 服務(wù)器上的解析關(guān)系。
這樣當(dāng)我們希望把某個(gè)域名與某IP 地址綁定的話,就可以通過在HOSTS 文件中添加解析條目來實(shí)現(xiàn)。
第一步:通過“開始->搜索”,然后查找名叫hosts 的文件。 第二步:當(dāng)然對(duì)于已經(jīng)知道他的路徑的讀者可以直接進(jìn)入
c:windowssystem32driversetc目錄中找到HOSTS 文件。如果你的系統(tǒng)是windows 2000,那么應(yīng)該到c:winntsystem32driversetc目錄中尋找。
第三步:雙擊HOSTS 文件,然后選擇用“記事本”程序?qū)⑵浯蜷_。 第四步:之后我們就會(huì)看到HOSTS 文件的所有內(nèi)容了,默認(rèn)情況下只有一行內(nèi)容“127.0.0.1 localhost”。(其他前面帶有#的行都不是真正的內(nèi)容,只是幫助信息而已)
第五步:將你希望進(jìn)行DNS 解析的條目添加到HOSTS 文件中,具體格式是先寫該域名對(duì)應(yīng)的IP 地址,然后空格接域名信息。
第六步:設(shè)置完畢后我們?cè)L問網(wǎng)址時(shí)就會(huì)自動(dòng)根據(jù)是在內(nèi)網(wǎng)還是外網(wǎng)來解析了。
DNS 查詢
DNS 查詢可以有兩種解釋,一種是指客戶端查詢指定DNS 服務(wù)器上的資源記錄(如A 記錄),另一種是指查詢FQDN 名的解析過程。
一、查詢DNS 服務(wù)器上的資源記錄
您可以在Windows 平臺(tái)下,使用命令行工具,輸入nslookup ,返回的結(jié)果包括域名對(duì)應(yīng)的IP 地址(A 記錄)、別名(CNAME 記錄)等。除了以上方法外,還可以通過一些DNS 查詢站點(diǎn)如國外的國內(nèi)的 查詢域名的DNS 信息。
二、FQDN 名的解析過程查詢
若想跟蹤一個(gè)FQDN 名的解析過程,在Linux Shell下輸入dig www trace,返回的結(jié)果包括從跟域開始的遞歸或迭代過程,一直到權(quán)威域名服務(wù)器。
,