DNS伺服器原理學習

2021-09-25 22:54:27 字數 2709 閱讀 3726

在使用瀏覽器時,要訪問一些**的話,就是輸入相應**提供給公眾的網域名稱進行訪問,但是學過網路程式設計的也知道,這背後隱藏從網域名稱->ip的轉化過程,這就是我們今天要說的內容。主要說說折背後的工作原理吧!

dns(網域名稱系統)是網際網路的中心部分,提供**名稱到實際ip的轉化服務,所以也稱網域名稱系統為網域名稱解析伺服器。

本地網域名稱伺服器向根網域名稱伺服器查詢,根網域名稱伺服器告訴它下一步到**去查詢,然後它再去查,每次它都是以客戶機的身份去各個伺服器查詢。

如果hosts中沒有這個網域名稱的對映,則查詢本地dns解析器快取,是否有這個**的對映關係,如果有,直接返回,完成網域名稱解析。

如果hosts與本地dns解析器快取都沒有相應的對映關係,首先找tcp/ip引數中設定的首選dns伺服器,在此我們叫他本地dns伺服器此伺服器收到查詢時,如果要查詢的網域名稱包含在本地配置區域資源中,則返回解析結果給客戶機,完成網域名稱解析,此解析具有權威性

如果要查詢的網域名稱,不由本地dns伺服器區域解析,但該伺服器已經快取了此**的相關對映關係,則呼叫這個ip位址對映,完成網域名稱解析,此解析不具有權威性

如果使用**模式,此dns伺服器就會將請求**至上一級dns伺服器,由上一級伺服器進行解析,上一級伺服器如果不能解析,或找根dns或把請求**至上上級,依次迴圈,不管是本地dns伺服器用還是**,還是根提示,將結果返回給本地dns,由此dns伺服器再返回給客戶機。

以下為網域名稱系統的網域名稱樹:

**於網路!

遞迴查詢:

本機向本地網域名稱伺服器發出一次查詢請求,就靜待最終的結果。如果本地網域名稱伺服器無法解析,自己會以dns客戶機的身份向其它網域名稱伺服器查詢,直到得到最終的ip位址告訴本機。

這裡就不模擬了,說的也比較通俗了!

dns協議報文格式:

會話標識

是dns報文的id標識,對於請求報文和相應的應答報文,這個欄位是相同的,通過它可以區分dns應答為那個請求的響應。

標誌

qr(1bit)查詢響應標誌,0為查詢,1為響應。

opcode(4bit)0表示反向查詢,2為伺服器狀態請求

aa(1bit)表示授權回答

tc(1bit)表示可以截斷的

rd(1bit)表示期望遞迴

ra(1bit)表示可用遞迴

rcode(4bit)表示返回碼,0表示沒有差錯,3表示名字差錯,2表示伺服器錯誤

數量字段(共八字節):question,answer rrs, authority rrs,addtional rrs各自表示後面的區域的數量。questions表示查詢問題的數量,answers表示回答區域的數量,authoritatives nameservers表示授權區域的數量,additional records表示附加區域的數量。

querys區域

查詢名:長度不固定,且不使用填充位元組,一般該欄位表示的是需要查詢的網域名稱,如果是反向查詢,則為ip,一般格式如下:

查詢型別

1 a 有網域名稱獲取ipv4位址

2 ns 查詢網域名稱伺服器

5 cname 查詢名稱規範

6 soa 開始授權

11 wks 熟知服務

查詢類

通常為1,表名是internet 資料

資源記錄區域(rr)包括回答區域,授權區域,和附加區域

網域名稱

他的格式和queries區域查詢的名字欄位是一樣的,有一點不同的是,當報文網域名稱出現重複的時候,該欄位使用兩個位元組偏移來表示。

查詢類

對於internet資訊,總是in

生存時間ttl

表示資源記錄的生命週期,一般 用於當位址解析程式取出資源記錄後決定儲存及使用快取資料的時間,也可以表示該資源記錄的穩定程度,極為穩定的資訊會被分配乙個很大的值。

資源資料

該字段是可變長的字段,表示按照查詢段的要求返回相關資料記錄的資料。可以是address或者cname等。

在請求dns解析的時候,會請求埠為53的dns伺服器,所以我們下面使用wireshark分析一下,nslookup 某東的dns解析過程。

使用wireshar抓取埠為53的應用程式的udp包。

在終端輸入:

nslookup www.jd.com

dns伺服器配置 專案三 DNS伺服器配置

一 專案任務描述 有一所院校,組建了校園內部的區域網並架社內部的web伺服器和ftp伺服器,現需要安裝並配置一台dns伺服器為校園網內部的使用者提供dns服務,使使用者能夠使用網域名稱訪問內部的web 和ftp伺服器以及網際網路上的各個 二 專案任務劃分 子任務1 dns的安裝 子任務2 dns正向...

DHCP伺服器 DNS伺服器 Samba伺服器

dhcp伺服器 dhcp在管理網路配置方面很有作用,特別是乙個當乙個網路的規模較大時,使用dhcp可極大的減少 管理員的工作量。端的dhcp請求,給客戶端分配ip位址。而客戶端負責向伺服器發出請求ip位址的資料報,並獲取 伺服器分配的ip位址,為客戶端分配ip位址。大多數作業系統也都提供了dhcp客...

關於DNS伺服器

dns的全稱和作用 什麼是dns伺服器 簡單來說,dns伺服器是domain name system或者domain name service 網域名稱系統或者餘名服務 網域名稱系統為internet上的主機分配網域名稱位址和ip位址。使用者使用網域名稱位址,該系統就會自動把網域名稱位址轉為ip位址...