dns網域名稱系統,給網域名稱系統dns(domain name system)是網際網路使用的命名系統,用來把便於人們使用的機器名字轉換成為ip位址。網域名稱系統其實就是名字系統。為什麼不叫「名字」而叫「網域名稱」呢?這是因為在這種網際網路的命名系統中使用了許多的「域(domain)」,因此就出現了「網域名稱」這個名詞。「網域名稱系統」明確地指明這種系統是應用在網際網路中。
網域名稱到ip位址的解析過程的要點如下:當某乙個應用需要把主機名解析為ip位址時,該應用程序就呼叫解析程式,並稱為dns的乙個客戶,把待解析的網域名稱放在dns請求報文中,以udp使用者資料報方式發給本地網域名稱伺服器。本地網域名稱伺服器在查詢網域名稱後,把對應的ip位址放在回答報文中返回。應用程式獲得目的主機的ip位址後即可進行通訊。
網域名稱伺服器又分四種:
根網域名稱伺服器:最高層次的網域名稱伺服器,也是最重要的網域名稱伺服器。所有的根網域名稱伺服器都知道所有的頂級網域名稱伺服器的網域名稱和ip位址。不管是哪乙個本地網域名稱伺服器,若要對網際網路上任何乙個網域名稱進行解析,只要自己無法解析,就首先求助根網域名稱伺服器。所以根網域名稱伺服器是最重要的網域名稱伺服器。假定所有的根網域名稱伺服器都癱瘓了,那麼整個dns系統就無法工作。需要注意的是,在很多情況下,根網域名稱伺服器並不直接把待查詢的網域名稱直接解析出ip位址,而是告訴本地網域名稱伺服器下一步應當找哪乙個頂級網域名稱伺服器進行查詢。
頂級網域名稱伺服器:負責管理在該頂級網域名稱伺服器註冊的二級網域名稱。
許可權網域名稱伺服器:負責乙個「區」的網域名稱伺服器。
本地網域名稱伺服器:本地伺服器不屬於下圖的網域名稱伺服器的層次結構,但是它對網域名稱系統非常重要。當乙個主機發出dns查詢請求時,這個查詢請求報文就傳送給本地網域名稱伺服器。
注意:一、主機向本地網域名稱伺服器的查詢一般都是採用遞迴查詢。所謂遞迴查詢就是:如果主機所詢問的本地網域名稱伺服器不知道被查詢的網域名稱的ip位址,那麼本地網域名稱伺服器就以dns客戶的身份,向其它根網域名稱伺服器繼續發出查詢請求報文(即替主機繼續查詢),而不是讓主機自己進行下一步查詢。因此,遞迴查詢返回的查詢結果或者是所要查詢的ip位址,或者是報錯,表示無法查詢到所需的ip位址。
二、本地網域名稱伺服器向根網域名稱伺服器的查詢的迭代查詢。迭代查詢的特點:當根網域名稱伺服器收到本地網域名稱伺服器發出的迭代查詢請求報文時,要麼給出所要查詢的ip位址,要麼告訴本地伺服器:「你下一步應當向哪乙個網域名稱伺服器進行查詢」。然後讓本地伺服器進行後續的查詢。根網域名稱伺服器通常是把自己知道的頂級網域名稱伺服器的ip位址告訴本地網域名稱伺服器,讓本地網域名稱伺服器再向頂級網域名稱伺服器查詢。頂級網域名稱伺服器在收到本地網域名稱伺服器的查詢請求後,要麼給出所要查詢的ip位址,要麼告訴本地伺服器下一步應當向哪乙個許可權網域名稱伺服器進行查詢。最後,知道了所要解析的ip位址或報錯,然後把這個結果返回給發起查詢的主機。
dns同時占用udp和tcp埠53是公認的,這種單個應用協議同時使用兩種傳輸協議的情況在tcp/ip棧也算是個另類。
dns的規範規定了2種型別的dns伺服器,乙個叫主dns伺服器,乙個叫輔助dns伺服器。在乙個區中主dns伺服器從自己本機的資料檔案中讀取該區的dns資料資訊,而輔助dns伺服器則從區的主dns伺服器中讀取該區的dns資料資訊。當乙個輔助dns伺服器啟動時,它需要與主dns伺服器通訊,並載入資料資訊,這就叫做區傳送(zone transfer)。
dns在進行區域傳輸的時候使用tcp協議,其它時候則使用udp協議。
udp報文的最大長度為512位元組,而tcp則允許報文長度超過512位元組。當dns查詢超過512位元組時,協議的tc標誌出現刪除標誌,這時則使用tcp傳送。通常傳統的udp報文一般不會大於512位元組。
輔助網域名稱伺服器會定時(一般是3小時)向主網域名稱伺服器進行查詢以便了解資料是否有變動。如有變動,則會執行一次區域傳送,進行資料同步。區域傳送將使用tcp而不是udp,因為資料同步傳送的資料量比乙個請求和應答的資料量要多得多。
tcp是一種可靠的連線,保證了資料的準確性。
客戶端向dns伺服器查詢網域名稱,一般返回的內容都不超過512位元組,用udp傳輸即可。不用經過tcp三次握手,這樣dns伺服器負載更低,響應更快。雖然從理論上說,客戶端也可以指定向dns伺服器查詢的時候使用tcp,但事實上,很多dns伺服器進行配置的時候,僅支援udp查詢包。
dns劫持就是再dns解析的過程中出的問題,黑客在返回正確的ip位址的時候進行掉包,給你換成了乙個跟原ip位址幾乎一模一樣的ip位址,或者投放廣告,讓你轉到廣告網頁那邊去。
針對dns劫持,目前唯一比較有效的辦法就是加速運營商dns快取記錄獲取重新整理的時間及資料,保障獲取結果的準確性。
DNS原理及解析過程
就是所謂的 其實我們的 www.baidu.com在配置當中應該是www.baidu.com.最後有一點 一般我們在瀏覽器裡輸入時會省略後面的點,而這也已經成為了習慣。根域伺服器我們知道有13臺,但是這是錯誤的觀點。根域伺服器只是具有13個ip位址,但機器數量卻不是13臺,因為這些ip位址借助了任播...
DNS原理及其解析過程
dns原理及其解析過程 精彩剖析 什麼是dns?dns domain name system 是 網域名稱系統 的英文縮寫,是一種組織成域層次結構的計算機和網路服務命名系統,它用於tcp ip網路,它所提供的服務是用來將主機名和網域名稱轉換為ip位址的工作。dns就是這樣的一位 翻譯官 它的基本工作...
DNS原理及其解析過程
什麼是dns?dns domain name system 是 網域名稱系統 的英文縮寫,是一種組織成域層次結構的計算機和網路服務命名系統,它用於tcp ip網路,它所提供的服務是用來將主機名和網域名稱轉換為ip位址的工作。dns就是這樣的一位 翻譯官 它的基本工作原理可用下圖來表示。dns網域名稱...