DNS域名系統

定義

  DNS 是域名系統 (Domain Name System) 的縮寫,它是由解析器和域名服務器組成的。域名服務器是指保存有該網絡中所有主機的域名和對應IP地址,並具有將域名轉換爲IP地址功能的服務器。其中域名必須對應一個IP地址,而IP地址不一定有域名。域名系統採用類似目錄樹的等級結構。域名服務器爲客戶機/服務器模式中的服務器方,它主要有兩種形式:主服務器和轉發服務器。將域名映射爲IP地址的過程就稱爲“域名解析”。在Internet上域名與IP地址之間是一對一(或者多對一)的,域名雖然便於人們記憶,但機器之間只能互相認識IP地址,它們之間的轉換工作稱爲域名解析,域名解析需要由專門的域名解析服務器來完成,DNS就是進行域名解析的服務器。 DNS 命名用於 Internet TCP/IP 網絡中,通過用戶友好的名稱查找計算機和服務。當用戶在應用程序中輸入 DNS 名稱時,DNS 服務可以將此名稱解析爲與之相關的其他信息,如 IP 地址。因爲,你在上網時輸入的網址,是通過域名解析系統解析找到了相對應的IP地址,這樣才能上網。其實,域名的最終指向是IP。

  在IPV4中IP是由32位二進制數組成的,將這32位二進制數分成4組每組8個二進制數,將這8個二進制數轉化成十進制數,就是我們看到的IP地址,其範圍是在0~255之間。因爲,8個二進制數轉化爲十進制數的最大範圍就是0~255。現在已開始試運行、將來必將代替IPv4的IPV6中,將以128位二進制數表示一個IP地址。

  大家都知道,當我們在上網的時候,通常輸入的是如網址,其實這就是一個域名,而我們計算機網絡上的計算機彼此之間只能用IP地址才能相互識別。再如,我們去一WEB服務器中請求一WEB頁面,我們可以在瀏覽器中輸入網址或者是相應的IP地址,例如我們要上新浪網,我們可以在IE的地址欄中輸入網址,也可輸入IP地址,但是這樣子的IP地址我們記不住或說是很難記住,所以有了域名的說法,這樣的域名會讓我們容易的記住。

  DNS:Domain Name System 域名管理系統 域名是由圓點分開一串單詞或縮寫組成的,每一個域名都對應一個惟一的IP地址,這一命名的方法或這樣管理域名的系統叫做域名管理系統。

  申請了DNS後,客戶可以自己爲域名作解析,或增設子域名.客戶申請DNS時,建議客戶一次性申請兩個。

歷史

  DNS最早於1983年由保羅·莫卡派喬斯(Paul Mockapetris)發明;原始的技術規範在882號因特網標準草案(RFC 882)中發佈。1987年發佈的第1034和1035號草案修正了DNS技術規範,並廢除了之前的第882和883號草案。在此之後對因特網標準草案的修改基本上沒有涉及到DNS技術規範部分的改動。

  早期的域名必須以英文句號“.”結尾 ,這樣DNS才能夠進行域名解析。如今DNS服務器已經可以自動補上結尾的句號。

  當前,對於域名長度的限制是63個字符,其中不包括www..com或者其他的擴展名。域名同時也僅限於ASCII字符的一個子集,這使得很多其他語言無法正確表示他們的名字和單詞。基於Punycode碼的IDNA系統,可以將Unicode字符串映射爲有效的DNS字符集,這已經通過了驗證並被一些註冊機構作爲一種變通的方法所採納。

位置

  提供DNS的是計算機,是安裝了DNS服務器端軟件的計算機。服務器端軟件既可以是基於類Unix操作系統,也可以是基於Windows操作系統的。裝好DNS服務器軟件後,您就可以在您指定的位置創建區域文件了,所謂區域文件就是包含了此域中名字到IP地址解析記錄的一個文件(如文件名可能是這個文件的內容是這樣的:

  primary name server = dns2(主服務器的主機名是 )

  serial = 2007042913 (當前序列號是2007042913。這個序列號的作用是當輔域名服務器來copy時候這個文件時,如果號碼增加了就copy)

  refresh = 10800 (3 hours) (輔域名服務器每隔3小時查詢一個主服務器)

  retry = 3600 (1 hour) (當輔域名服務試圖在主服務器上查詢更時,而連接失敗了,輔域名服務器每隔1小時訪問主域名服務器)

  expire = 604800 (7 days) (輔域名服務器在向主服務更新失敗後,7天后刪除中的記錄。)

  default TTL = 3600 (1 hour) (緩存服務器保存記錄的時間是1小時。也就是告訴202.96.209.5保存域的解析記錄爲1小時)

實現方法

  無論您是通過linux還是windows搭建dns服務器,原理都是一致的。

  您可以把DNS服務器配置成以下3類之一:

  1、主DNS服務器。

  2、輔DNS服務器

  3、緩存DNS服務器。

  目前國際域名的DNS必須在國際域名註冊商處註冊,國內域名的DNS必須在CNNIC註冊,註冊支持解析英文域名和中文域名的dns要分別註冊:

  (1)步驟:選擇做爲DNS後綴的域名---創建dns服務器---選擇是在國際註冊還是國內註冊-申請--交付費用

  (2)費用:約75元/個(一次性)

  (3)條件:如果註冊國際DNS服務器的,dns服務器的名稱必須是在具有條件的公司註冊的國際英文域名才能註冊,有獨立IP地址,DNS服務器域名前的前綴最好是dns.、ns.等

  DNS服務器

  現在一般國內的域名註冊商,提供DNS解析服務是免費的,但國外的註冊商很多是DNS解析服務是收費的。

  在系統中提交註冊DNS的申請,款到後註冊的時間爲2個工作日左右。

  修改DNS服務器   (1)條件:要更改爲合法的DNS。

  如果要查詢DNS是否爲合法的DNS,請點擊:DNS查詢界面

  輸入DNS服務器的名稱或者IP地址,選中第三個選項Nameserver,查詢如果查詢出有DNS註冊的信息,如註冊商,名稱對應的IP地址,則這個DNS是合法的。

  (2)修改方法:通過具有條件的公司註冊的國際域名變更DNS:用戶可通過和提供服務的該公司進行協商(大致步驟爲:提出申請並提交相關材料後該業務公司會在48小時左右完成變更)。

  國際英文域名、國內英文域名可以修改DNS,這項服務是免費的。

使用免費的DNS

  國內外有不少提供免費DNS服務的提供商,其中國內著名的有IIDNS,DNSPod和OpenDns等

解析故障

  

  在實際應用過程中可能會遇到DNS解析錯誤的問題,就是說當我們訪問一個域名時無法完成將其解析到IP地址的工作,而直接輸入網站IP卻可以正常訪問,這就是因爲DNS解析出現故障造成的。這個現象發生的機率比較大,所以本文將從零起步教給各位讀者一些基本的排除DNS解析故障的方法。

     什麼是DNS解析故障?   一般來說像我們訪問的地址都叫做域名,而衆所周知網絡中的任何一個主機都是IP地址來標識的,也就是說只有知道了這個站點的IP地址才能夠成功實現訪問操作。

  不過由於IP地址信息不太好記憶,所以網絡中出現了域名這個名字,在訪問時我們這需要輸入這個好記憶的域名即可,網絡中會存在着自動將相應的域名解析成IP地址的服務器,這就是DNS服務器。能夠實現DNS解析功能的機器可以是自己的計算機也可以是網絡中的一臺計算機,不過當DNS解析出現錯誤,例如把一個域名解析成一個錯誤的IP地址,或者根本不知道某個域名對應的IP地址是什麼時,我們就無法通過域名訪問相應的站點了,這就是DNS解析故障。

  出現DNS解析故障最大的症狀就是訪問站點對應的IP地址沒有問題,然而訪問他的域名就會出現錯誤。

  當我們的計算機出現了DNS解析故障後不要着急,解決的方法也很簡單。

  (1)用nslookup來判斷是否真的是DNS解析故障:

  要想百分之百判斷是否爲DNS解析故障就需要通過系統自帶的NSLOOKUP來解決了。

  第一步:確認自己的系統是windows 2000和windows xp以上操作系統,然後通過“開始->運行->輸入CMD”後回車進入命令行模式。

  第二步:輸入nslookup命令後回車,將進入DNS解析查詢界面。

  第三步:命令行窗口中會顯示出當前系統所使用的DNS服務器地址,例如筆者的DNS服務器IP爲202.106.0.20。

  第四步:接下來輸入你無法訪問的站點對應的域名。假如不能訪問的話,那麼DNS解析應該是不能夠正常進行的。我們會收到DNS request timed out,timeout was 2 seconds的提示信息。這說明我們的計算機確實出現了DNS解析故障。

  小提示:如果DNS解析正常的話,會反饋回正確的IP地址。

  (2)查詢DNS服務器工作是否正常:

  這時候我們就要看看自己計算機使用的DNS地址是多少了,並且查詢他的運行情況。

  第一步:確認自己的系統是windows 2000和windows xp以上操作系統,然後通過“開始->運行->輸入CMD”後回車進入命令行模式。

  第二步:輸入ipconfig /all命令來查詢網絡參數。

  第三步:在ipconfig /all顯示信息中我們能夠看到一個地方寫着DNS SERVERS,這個就是我們的DNS服務器地址。例如筆者的是202.106.0.20和202.106.46.151。從這個地址可以看出是個外網地址,如果使用外網DNS出現解析錯誤時,我們可以更換一個其他的DNS服務器地址即可解決問題。

  第四步:如果在DNS服務器處顯示的是自己公司的內部網絡地址,那麼說明你們公司的DNS解析工作是交給公司內部的DNS服務器來完成的,這時我們需要檢查這個DNS服務器,在DNS服務器上進行nslookup操作看是否可以正常解析。解決DNS服務器上的DNS服務故障,一般來說問題也能夠解決。

  (3)清除DNS緩存信息法:

  當計算機對域名訪問時並不是每次訪問都需要向DNS服務器尋求幫助的,一般來說當解析工作完成一次後,該解析條目會保存在計算機的DNS緩存列表中,如果這時DNS解析出現更改變動的話,由於DNS緩存列表信息沒有改變,在計算機對該域名訪問時仍然不會連接DNS服務器獲取最新解析信息,會根據自己計算機上保存的緩存對應關係來解析,這樣就會出現DNS解析故障。這時我們應該通過清除DNS緩存的命令來解決故障。

  第一步:通過“開始->運行->輸入CMD”進入命令行模式。

  第二步:在命令行模式中我們可以看到在ipconfig /?中有一個名爲/flushdns的參數,這個就是清除DNS緩存信息的命令。

  第三步:執行ipconfig /flushdns命令,當出現“successfully flushed the dns resolver cache”的提示時就說明當前計算機的緩存信息已經被成功清除。

  第四步:接下來我們再訪問域名時,就會到DNS服務器上獲取最新解析地址,再也不會出現因爲以前的緩存造成解析錯誤故障了。

  (4)修改HOSTS文件法:

  修改HOSTS法就是把HOSTS文件中的DNS解析對應關係進行修改,從而實現正確解析的目的。因爲在本地計算機訪問某域名時會首先查看本地系統中的HOSTS文件,HOSTS文件中的解析關係優先級大於DNS服務器上的解析關係。

  這樣當我們希望把某個域名與某IP地址綁定的話,就可以通過在HOSTS文件中添加解析條目來實現。

  第一步:通過“開始->搜索”,然後查找名叫hosts的文件。

  第二步:當然對於已經知道他的路徑的讀者可以直接進入c:/windows/system32/drivers/etc目錄中找到HOSTS文件。如果你的系統是windows 2000,那麼應該到c:/winnt/system32/drivers/etc目錄中尋找。

  第三步:雙擊HOSTS文件,然後選擇用“記事本”程序將其打開。

  第四步:之後我們就會看到HOSTS文件的所有內容了,默認情況下只有一行內容“127.0.0.1 localhost”。(其他前面帶有#的行都不是真正的內容,只是幫助信息而已)

  第五步:將你希望進行DNS解析的條目添加到HOSTS文件中,具體格式是先寫該域名對應的IP地址,然後空格接域名信息。

  第六步:設置完畢後我們訪問網址時就會自動根據是在內網還是外網來解析了。

發佈了19 篇原創文章 · 獲贊 2 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章