天天看點

dns服務

dns系統的作用

正向解析:根據主機名稱(域名)查找對應的IP位址

反向解析:根據IP位址查找對應的主機域名

dns系統的分布式資料結構

dns服務

域名劃分:根域、頂級域、二級域、子域

組織域:3個字元的代号,表示DNS域中所包含的組織的主要功能或活動,mil 軍事機構組織、int 國際機構組織

國家域:2個字元的國家或地區代号,cn 中國、kr 南韓

反向域:in-addr.arpa,用于将IP位址映射到名字。反向域名格式:X.X.X.in-addr.arpa

根域:記錄着Internet的重要DNS資訊,由Internet域名注冊授權機構管理。全球13台根邏輯域名伺服器,名字分别為“A”至“M”,其中10台設定在美國,另外各有一台設定于荷蘭、瑞典和日本。根伺服器主要用來管理網際網路的主目錄,1個為主根伺服器,放置在美國。其餘12個均為輔根伺服器。

頂級域:由Internet域名注冊授權管理機構管理

頂級域的下級域:Internet域名注冊授權機構授權給Internet的各種組織。當一個組織獲得了對域名空間某一部分的授權後,該組織就負責命名所配置設定的域及其子域,包括域中的計算機和其他裝置,并管理配置設定的域中主機名與IP位址的映射資訊

例如:http://www.sxkj.com.cn 其中“.”代表分隔符(出現在FQDN最右邊的表示根域,可以省略),“cn”為頂級域,“com”為二級域,“sxkeji”為三級域,“www”為主機名

       主機名.DNS字尾=FQDN

4.域名服務的解析原理和過程

dns服務

遞歸查詢:在該模式下DNS伺服器接受到客戶機請求,必使用一個準确的查詢結果回複客戶機。如果DNS伺服器本地沒有存儲查詢DNS資訊,那麼該伺服器會詢問其他伺服器,并将傳回的查詢結果送出給客戶機,同時也會緩存該結果

疊代查詢:在該模式下,DNS伺服器會向客戶機提供其他能夠解析查詢請求的DNS伺服器位址,當客戶機發送查詢請求時,DNS伺服器并不直接回複查詢結果,而是告訴客戶機另一台DNS伺服器位址,客戶機再向這台DNS伺服器送出請求,依次循環到傳回查詢的結果為止

5.dns系統的類型

緩存域名伺服器:提供域名解析記錄的緩存,通過向其他域名伺服器查詢獲得域名->IP位址記錄

将域名查詢結果緩存到本地,提高重複查詢時的速度

主域名伺服器:特定DNS區域的官方伺服器,具有唯一性,權威性,負責維護該區域内所有域名->IP位址的映射記錄

從域名伺服器:維護的域名->IP位址記錄 來源于主域名伺服器

6.bind安裝及服務控制

bind-9.8.2-0.17.rc1.el6.x86_64.rpm        --DNS伺服器主程式

bind-chroot-9.8.2-0.17.rc1.el6.x86_64.rpm    --将bind主程式關在家裡面

bind-utils-9.8.2-0.17.rc1.el6.x86_64.rpm   --bind用戶端工具,預設已經安裝

bind-chroot增加了bind伺服器的安全性,服務以root權限啟動和運作,黑客利用服務的漏洞入侵系統,能獲得root級别的權限,進而控制整個系統。現在伺服器軟體通常設計為以root權限啟動,然後伺服器進行自行放棄root,再以某個低權限的系統帳号來運作程序。安裝了bind-chroot包後,DNS服務的目錄變成了/var/named/chroot

服務腳本:/etc/init.d/named

預設監聽端口:tcp udp 53

主配置檔案:/var/named/chroot/etc/named.conf

資料檔案:/var/named/chroot/var/named/ 目錄

rhel6 /etc.named.conf 和 /var/named/ 它們是對應檔案的硬連接配接檔案(看節點号)

如果沒有安裝bind-chroot軟體包

主配置檔案:/etc/named.conf

資料檔案位于:/var/named/  目錄

bind伺服器端程式

/etc/named.conf

全局配置部分:設定dns伺服器的全局參數,包括監聽位址/端口、資料檔案的預設位置等。

使用options {......};的配置段

dump-file 各dns區域的資料檔案預設存放位置

allow-query 是否允許用戶端的查詢,内容可以是any或網域(IP/netmask)的格式

forwarders  轉發dns請求到其他伺服器

include  指定區域檔案位置

區域配置部分:設定本伺服器提供域名解析的特定DNS區域,包括域名、伺服器角色、資料檔案名等。使用 zone "區域名" IN {......}; 的配置段

hint表示根區域,master表示主區域,slave表示輔助區域

file 用于設定該區域對應的資料檔案名

倒序網絡位址.in-addr.arpa的形式表示反向區域

注意:/etc/resove.conf儲存本機需要使用的dns伺服器的ip位址

dns區域檔案中包含的資源記錄的類型

SOA(起始授權機構),指定該區域的權威名稱伺服器

NS(名稱伺服器),表示某區域的權威伺服器和SOA中指定的該區域的主伺服器和輔助伺服器

A(主機),列出了區域中FQDN到IP位址的映射,隻用在正向解析的區域資料檔案中

PTR(指針),相對于A資源記錄,PTR記錄把IP位址映射到FQDN,隻用在反向解析的區域資料檔案中。配置反向解析記錄時,隻需要指定IP位址中的主機位址部分即可,網絡位址部分不寫

示例:1 IN PTR www.mym.con

若在16.168.192.in-addr.arpa反向區域資料檔案中,則對應為192.168.16.1

MX,郵件交換器記錄,向指定郵件交換主機提供消息路由

CNAME(别名),将多個名字映射到同一台計算機,便于使用者通路

全局TTL配置項及SOA記錄

$TTL (Time To Live)生存時間記錄,其他資源記錄會自動繼承第一行的$TTL值

@ 代表zone,是有/etc/named.conf定義出zone決定的

SOA(Start Of Authority),授權資訊開始

主機名:master dns的主機名,注意小數點

管理者mail:應該是root@,用小數點取代

Serial->更新序列号,Refresh->重新整理時間,Retry->重試延時,Expire->失效時間,Minimun->位址解析記錄的最小緩存時間,有點像TTL

; 開始的部分表示注釋資訊

基于域名解析的負載均衡->同一域名對應多個IP位址

示例:www     IN A    10.0.226.2

        www     IN A    10.0.226.9

        www     IN A    10.0.226.8

泛域名解析->找不到精确對應的A記錄時,使用“*”進行比對,這條記錄一定要寫在最後,可以是include的前面

示例:*       IN A     10.0.226.10

連續域名解析,用$GENERATE函數,實作快速添加大量有規律的dns資源記錄

$GENERATE是函數,1-254是要循環的變量,X$是主機名,X.X.X.$是對應的IP位址

示例:$GENERATE 100-200 mym$ IN A 10.0.226.$

        測試:$ host mym120.<zone定義的名字>

7.文法檢測工具named-checkconf -t /var/named/chroot   檢查配置檔案named-checkzone <域名> <區域資料檔案>   檢查zone伺服器搭建

提供dns服務的必要條件

伺服器有固定IP位址

安裝并啟動dns服務

有區域檔案,或者配置轉發器,或者配置根域名伺服器

轉發伺服器,将本地dns伺服器無法解析的查詢,轉發到網絡上的其他dns伺服器,轉發到轉發器的查詢一般為遞歸查詢

8.各種測試指令

 host [-t type] hostname/IP [server]

nslookup [-type=資源記錄] hostname/ip [server]

nslookup 互動式查詢

查詢PTR記錄:set type=PTR

查詢郵件互動記錄:set type=MX

臨時指定伺服器:server ip

 dig [類型] hostname/ip @ip 指定查詢dns伺服器ip

 示例:dig @202.103.96.112 www.sina.com