天天看點

高速緩存DNS

DNS總攬

1.權威名稱伺服器

– 存儲并提供某區域 ( 整個 DNS 域或 DNS 域的一部分 ) 的實際資料。權威名稱伺服器的類型包括:

    • Master : 包含原始區域資料。有時稱作 “ 主要 ” 名稱伺服器

    • Slave : 備份伺服器 , 通過區域傳送從 Master 伺服器獲得的區域資料的副本。有時稱作 “ 次要 ” 

           名稱伺服器

2.非權威 / 遞歸名稱伺服器

– 用戶端通過其查找來自權威名稱伺服器的資料。遞歸名稱伺服器的類型包括:

    • 僅緩存名稱伺服器 : 僅用于查找 , 對于非重要資料之外的任何内容都不具有權威性

3.DNS查找

– 用戶端上的 Stub 解析器 将查詢發送至 /etc/resolv.conf 中的名稱伺服器

– 如果名稱伺服器對于請求的資訊具有權威性 , 會将權威答案發送至用戶端

– 否則 , 如果名稱伺服器在其緩存中有請求的資訊 , 則會将非權威答案發送至用戶端

– 如果緩存隻能該沒有資訊 , 名稱伺服器将搜尋權威名稱伺服器以查找資訊 , 從根區域開始 , 按照DNS

   層次結構向下搜素 , 直至對于資訊具有權威性的名稱伺服器 , 以此為用戶端獲得答案。在此情況中,

   名 ch 稱伺服器将資訊傳遞至用戶端并在自己的緩存中保留一個副本 , 以備以後查找。

4.DNS資源記錄

• DNS 區域采用資源記錄的形式存儲資訊。每條資源記錄均具有一個類型 , 表明其保留的資料類型

   – A : 名稱至 IPv4 位址

   – AAAA : 名稱至 IPv6 位址

   – CNAME : 名稱至 ” 規範名稱 “ ( 包含 A/AAAA 記錄的另一個名稱 )

   – PTR : IPv4/IPv6 位址至名稱

   – MX : 用于名稱的郵件交換器 ( 向何處發送其電子郵件 )

   – NS : 域名的名稱伺服器

   – SOA :” 授權起始 “ , DNS 區域的資訊 ( 管理資訊 )

5.DNS排錯

• 它顯示來自 DNS 查找的詳細資訊 , 其中包括為什麼查詢失敗:

   – NOERROR : 查詢成功

   – NXDOMAIN : DNS 伺服器提示不存在這樣的名稱

   – SERVFAIL : DNS 伺服器停機或 DNSSEC 響應

• 驗證失敗

   – REFUSED : DNS 伺服器拒絕回答 ( 也許是出于通路控制原因 )

6.dig輸出的部分内容

• 标題指出關于查詢和答案的資訊 , 其中包括響應狀态和設定的任何特殊标記 ( aa 表示權威答案 , 等等 )

   – QUESTION : 提出實際的 DNS 查詢

   – ANSWER : 響應 ( 如果有 )

   – AUTHORITY : 負責域 / 區域的名稱伺服器

   – ADDITIONAL : 提供的其他資訊 , 通常是關于名稱伺服器

   – 底部的注釋指出發送查詢的遞歸名稱伺服器以及獲得響應所花費的時間

7.緩存DNS伺服器

BIND是最廣泛使用的開源名稱伺服器在RHEL中 , 通過bind軟體包提供防火牆開啟端口53/TCP和  

53/UDPBIND的主配置檔案是/etc/named.conf/var/named目錄包含名稱伺服器所使用的其他資料檔案

8./etc/named.conf的文法

• // 或 # 至行末尾是注釋 ; 之間的文本也是注釋 (可以跨越多行)

• 指令以分号結束 (;)

• 許多指令認為位址比對清單放在大括号中、以CIDR表示法表示的IP位址或子網清單中 , 或者命名的ACL中

    ( 例如 any; [ 所有主機 ] 和none; [ 無主機 ] )

• 檔案以 options 塊開始 , 其中包含控制 named如何運作的指令

• zone 塊控制 named 如何查對于其具有權威性的根名稱伺服器和區域

示範:

1. 修改IP 與 hostname,并關閉firewall

高速緩存DNS

2.安裝bind伺服器

高速緩存DNS

3.開啟named服務,生成rndc.key

高速緩存DNS

4.vim /etc/named.conf修改配置檔案

高速緩存DNS
高速緩存DNS

##listen port {any};允許任何人

systemcatl restart named

高速緩存DNS

netstat -antple | grep named##檢視端口狀态

高速緩存DNS

5.正向解析

vim /etc/named.conf

##修改配置檔案,加入westos.com.zone

高速緩存DNS

cp -p /var/named/named.localhost /var/named/westos.com.zone

##以named.localhost為模版建立westos.com.zone(連同權限)

高速緩存DNS

vim /var/named/westos.com.zone

##NS:類型

高速緩存DNS

systemctl restart named##重新開機服務

用戶端:dig www.westos.com##測試

高速緩存DNS

vim /etc/named.conf

##修改配置檔案,将之前的zone(55到58行删除)

高速緩存DNS

vim /etc/named.rfc1912.zones##編輯

高速緩存DNS

在上配置檔案内配置如下:

高速緩存DNS

修改配置檔案

高速緩存DNS
高速緩存DNS

systemctl restart named

##重置後測試

高速緩存DNS

dig -t mx westos.com

##測試MXDNS正向解析

高速緩存DNS

6.反向解析

vim /etc/named.rfc1912.zones

##編輯配置檔案如下

高速緩存DNS

cp -p /var/named/named.loopback /var/named/westos.com.ptr

vim westos.com.ptr

高速緩存DNS

PTR ##IPV4/IPV6位址至名稱

高速緩存DNS

systemctl restart named

dig -x 172.25.254.111##重新開機後測試,用位址dig時加 -x

高速緩存DNS

7.不同IP的DNS解析

先将server與client配置雙網卡

高速緩存DNS

設定IP

高速緩存DNS

netstat -antlpe | grep named##檢視端口狀态

高速緩存DNS

将/etc/named.conf中49-56行注釋

高速緩存DNS

加入新的配置如下 ##為不同IP配置

高速緩存DNS

cp -p named.rfc1912.zones named.rfc1912.inter

##建立新的配置檔案為named.conf中配置服務

高速緩存DNS

編輯如下

高速緩存DNS

cp -p /var/named/westos.com.zone /var/named/westos.inter

##複制(連同權限)

vim /var/named/westos.com.inter

##編輯解析

高速緩存DNS
高速緩存DNS

測試:172.25.254.0

高速緩存DNS

測試:172.25.0.227

高速緩存DNS

8.client為server更新

cp -p westos.com.zone /mnt/

##試驗前将westos.com.zone備份

高速緩存DNS

vim /etc/named.rfc1912.zones

##修改配置檔案允許client用戶端更新server

高速緩存DNS

給予/var/named/權限,使selinux布爾值 named_write_master_zones 1使client能夠為server更新

高速緩存DNS

client : nsupdate

##add:添加 86400:24*60 A:名稱至IPV4位址

高速緩存DNS

測試:

高速緩存DNS

9.DNS更新加密

rm -fr /var/named/westos.com.zone.jnl /var/named/westos.com.zone

systemctl restart named

高速緩存DNS

dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westoskey

##生成dns加密密碼westoskey

高速緩存DNS

cp -p /etc/rndc.key /etc/westos.key

##以rndc.key為模版建立westos.key加密檔案

vim /etc/westos.key

高速緩存DNS
高速緩存DNS

##westoskey:所生成加密密碼名稱。 secret "...":密碼(建立時手動輸入)

高速緩存DNS

vim /etc/named,conf

##編輯配置檔案,include“”:包含/etc/westos.key,去讀

高速緩存DNS

vim /etc/named.rfc1912.zones

##修改配置檔案,allow-update { key westoskey } :隻允許使用密碼更新

高速緩存DNS

##将在server上生成的密匙給client

高速緩存DNS

nsupdate 

##自client更新

測試:REFUSED(需要密匙更新)

高速緩存DNS

測試:

高速緩存DNS

測試成功

高速緩存DNS

10.DNS動态解析

yum install dhcp -y

##安裝dhcp

高速緩存DNS

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

##引用模闆

高速緩存DNS

vim /etc/dhcp/dhcpd.conf

##編輯dhcp配置檔案

高速緩存DNS

修改如下:

伺服器IP

高速緩存DNS

更新方式:interim

高速緩存DNS

##subnet:子網路遮罩

##range 172.25.254.200 172.25.254.250 :ip配置設定範圍

高速緩存DNS

修改用戶端主機名及網卡為dhcp

高速緩存DNS

vim ifcfg-eth0##修改如下

高速緩存DNS

重新開機network

高速緩存DNS

172.25.254.200為dhcp動态指定的IP

高速緩存DNS

測試:

高速緩存DNS

繼續閱讀