天天看點

DNS 伺服器相關知識非權威(無授權)DNS伺服器

相關知識

域名解析:

将主機名自動轉換為ip位址。

1./etc/hosts (早期單一檔案式處理)

利用/etc/hosts檔案将主機名與ip一一對應,來達到根據主機名擷取ip的功能。

缺點:容量小,同步性差,資訊要求高(需要同時知道主機名和ip)。

2.bind (階層式管理系統)

BIND(berkeley internet name domain)伯克利大學開發,目前世界上使用最廣泛的域名系統(DNS)。通過dns 在隻知道主機名的情況下,可以連上該主機。

3.兩種方式的選擇

DNS 伺服器相關知識非權威(無授權)DNS伺服器
DNS 伺服器相關知識非權威(無授權)DNS伺服器

注:在linux系統裡面可以看到一般是以原始的單一檔案類型的/etc/hosts為第一詢問點。然後才是查詢我們的DNS。

(這個可以通過修改files 與 dns的的位置修改通路順序)

域名系統:

Domain Name System (DNS)

DNS利用類似樹形的目錄架構,将主機名的管理配置設定到不同層級的DNS伺服器中,并進行分層管理。每一層上的DNS伺服器所記錄的資訊,其實隻有其下一層的主機名而已。是以每台伺服器要處理的資訊量并不會特别的大。若ip變動也能很容易的進行修改。

缺點:當DNS當機,幾乎相當于沒有internet。

相關的概念:

主機名(hostname):網段下面的主機ip(可辨別字段)

域名(domainname):網絡所在區段(區域的字段)

完整主機名(FQDN):由域名與主機名組成

注:主機名與域名不是絕對的,看各例子:

www.dannneel.edu.tk

從上往下分析:開始的時候.tk為域名,其餘為主機名;往下一層,.edu.tk是域名,其餘為主機名;以此類推,到最後,域名越來越長,域名範圍越來越小,主機名越來越小,到最後确定到一台機子上。

利用DNS查詢主機ip的流程:

  1. a)讀取查詢目的; 當輸入查詢,系統查詢/etc/resolv.conf檔案讀DNS服務的位址,連接配接咨詢。
  2. b)被連接配接的DNS伺服器進行查詢是否有相關記錄,有則傳回資訊。沒有則向.(root)超級DNS伺服器詢問。
  3. c)由于域名系統的每一層服務隻記錄下一層的服務,是以遞歸向下,直到最後一層。
  4. 得到需要查詢的ip後,指定的那個DNS伺服器,首先重新整理自己本地的緩存,友善下次查詢;然後将得到的結果給使用者傳回。

常用指令:

dig

dig 完整主機名  ##正向查詢主機ip
dig -x ip    ##反向查詢,查詢主機名
           

非權威(無授權)DNS伺服器

(授權的DNS伺服器會有其他的網絡使用者進行咨詢通路,非授權的隻能在小局部進行服務提供)

注:以下操作進行的均為非授權的DNS伺服器搭建。

準備工作:

1.首先進行DNS服務軟體的安裝:

yum install bind -y

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新開機重新整理,确定DNS服務處于開啟的狀态;

DNS 伺服器相關知識非權威(無授權)DNS伺服器

2.修改dns服務配置檔案:

A)相關檔案裡面的關鍵字段:

1)

/etc/named.conf    ##DNS服務配置檔案
/etc/named.rfc1912.zones  ##DNS服務配置檔案輔助檔案,在指定關于域檔案或者叫DNS資料庫有重要的配置指定作用

listen-on 控制 named 偵聽的 IPv4 位址
listen-on-v6 控制 named 偵聽的 IPv6 位址
allow-query 控制哪些用戶端可以向 DNS 伺服器詢問資訊
forwarders 包含 DNS 查詢将轉發至的名稱伺服器的清單
( 而不是直接聯系外部名稱伺服器 ; 在設有防火 牆的情況中
很有用 )
           

2)

/var/named/named.localhost
– A : 名稱至 IPv4 位址
– AAAA : 名稱至 IPv6 位址
– CNAME : 名稱至 ”規範名稱 “ ( 包含 A/AAAA 記錄的另
一個名稱 )
– PTR : IPv4/IPv6 位址至名稱
– MX : 用于名稱的郵件交換器 ( 向何處發送其電子郵件 )
– NS : 域名的名稱伺服器
– SOA :” 授權起始 “ , DNS 區域的資訊 ( 管理資訊 )
           

B)修改配置:

1)設定本地域名解析通路的dns伺服器位址:

/etc/resolv.conf

DNS 伺服器相關知識非權威(無授權)DNS伺服器

這個檔案指定了域名解析咨詢的DNS伺服器位址,可以多寫幾個目前面的幾個DNS伺服器當機的時候按檔案的額順序,會通路咨詢豁後面的DNS伺服器,保證了上網域名解析的正常運作。

1.Cach-only 唯高速緩存DNS伺服器:

沒有自己的公開的zone域檔案或者叫DNS資料庫。通過緩存搜尋的結果,提供服務。

修改域名服務相關配置:

/etc/named.conf

DNS 伺服器相關知識非權威(無授權)DNS伺服器

11 12 行設定端口接受所有網絡的通路

17行設定任何用戶端可以進行通路

DNS 伺服器相關知識非權威(無授權)DNS伺服器

32行設定dns不進行驗證(非權威的)

DNS 伺服器相關知識非權威(無授權)DNS伺服器

35 行添加這一行,設定當本地的dns伺服器沒有相關答案的時候對上一級dns伺服器的詢問。

重新啟動服務。在這裡我們不進行域檔案或者叫DNS資料庫進行添加修改,這就是一個Cach-only 唯高速緩存DNS伺服器。

2.正向解析功能DNS伺服器:

在添加正向解析庫以及設定前,測試一下:

dig aaa.danny.com

DNS 伺服器相關知識非權威(無授權)DNS伺服器

并沒有正确的找到相關的資訊。

修改添加域指向檔案内容:

/etc/named.rfc1912.zones

DNS 伺服器相關知識非權威(無授權)DNS伺服器

複制檔案内容模闆,進行複制填入内容。

其中type為DNS資料庫類型,一般有;hint,master/slave

File:指向域檔案或者叫DNS資料庫.

添加域檔案(DNS資料庫):

DNS 伺服器相關知識非權威(無授權)DNS伺服器

注意一定要加上參數 -p 拷貝檔案不忽略檔案的權限,否者系統無法識别。

制作自己的域檔案修改相關的記錄資訊:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新啟動域名伺服器,查詢:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

可以看到現在查到的資訊是我們修改的DNS資料庫檔案裡的資訊。成功。

拓展功能:

CNAME更名:

在添加DNS資料庫的時候加行CNAME字段可以将查詢的主機名轉到另一個主機名查找對應的ip(類似于快捷方式)。

修改DNS資料庫資訊:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新整理重新開機服務,查詢結果:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

郵件交換(Mail eXchanger):

預先将要送到某個區域的郵件送到指定的郵件伺服器。

修改DNS資料庫資訊:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新整理重新開機服務,查詢結果:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

可以看到設定成功。

3.反向解析功能:

開始前進行fff.danny.com對應的172.25.106.188 進行反解析:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

複制域檔案指向檔案的指向模闆,進行添加;

/etc/named.rfc1912.zones

DNS 伺服器相關知識非權威(無授權)DNS伺服器

添加指向反向域檔案。

添加反向域檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

修改檔案内容:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新啟動,查詢:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

4.設定本地雙邊(雙向)DNS解析:

使得當DNS接到咨詢請求時,根據請求者的ip網段,走到不同的DNS資料庫指定檔案,再根據不同的指定檔案找到相關的DNS資料庫,傳回不同的結果。

效果:

内網段的機器隻能查到相同内網段的主機,不能查到外網的網段的主機。可用于限制上網範圍。

A)修改

/etc/named.conf

檔案:

根據ip網段不同,指定不同的DNS資料庫指向檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

(在修改之前每次都是根據注釋掉的訓示,查詢/etc/named.rfc1912zones,現在這個檔案沒有被指定,失效了)

B)建立不同的DNS資料庫指向檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

修改内容使得不一樣:

(原本以zone結尾的DNS資料庫沒有條目指向,相當于廢棄了)

local結尾檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

inter結尾檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

C)建立不同的DNS資料倉庫:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

local結尾檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

inter結尾檔案:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

現在基本配置好了,

測試1:

用另一台在6網段的機子設定

/etc/resolv.conf

查詢的DNS服務後進行測試:(DNS伺服器有6網段和254網段)

DNS 伺服器相關知識非權威(無授權)DNS伺服器

結果:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

測試2:

将這台測試機子的網段設為254的,

/etc/resolv.conf

将查詢指向DNS伺服器也修改,(其實通路的還是同一台實體機)

DNS 伺服器相關知識非權威(無授權)DNS伺服器

結果:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

5.主輔dns伺服器:

指定master DNS為主服務資料庫與slave DNS為輔助資料庫 ,slave DNS本身沒有資料庫slave DNS會自動更新master DNS的資料庫。

Master DNS 配置:

resolv.conf

DNS 伺服器相關知識非權威(無授權)DNS伺服器

/etc/named.conf

DNS 伺服器相關知識非權威(無授權)DNS伺服器
DNS 伺服器相關知識非權威(無授權)DNS伺服器

/etc/named.rfc1912.zones

##指定域檔案

DNS 伺服器相關知識非權威(無授權)DNS伺服器

主master DNS的配置完成,下面進行slave DNS 端的配置:

resolv.conf

檔案指定伺服器的IP,指向自己.

DNS 伺服器相關知識非權威(無授權)DNS伺服器

/etc/named.conf

DNS 伺服器相關知識非權威(無授權)DNS伺服器
DNS 伺服器相關知識非權威(無授權)DNS伺服器

/etc/named.rfc1912.zones

##在配置檔案裡面指明主master DNS。

指向masters 的IP

同步masters 的檔案到slave下。

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新開機DNS服務,檢視slave底下的檔案,,可以得知效果:

DNS 伺服器相關知識非權威(無授權)DNS伺服器

可以看到同步到slave DNS 成功。但是如果當master DNS的域檔案内容改變,那麼預設slave不會得知并且同步更新。

自動更新主輔dns伺服器:

下面設定master DNS伺服器,當master DNS伺服器更新,主動向slave DNS 提出更新資訊。

修改master DNS伺服器:

/etc/named.rfc1912.zones

##指明傳送的slave DNS伺服器的ip

DNS 伺服器相關知識非權威(無授權)DNS伺服器

westos.com.zone檔案被修改後,注意要修改serial号,隻有當serial不一樣,系統認為檔案更新了,才會給slave DNS發送更新資訊。

DNS 伺服器相關知識非權威(無授權)DNS伺服器

重新開機master與slaver兩邊的DNS服務,配置完成。

all