一、實驗環境
1、輔助域名DNS服務器
DNS通過劃分為若干個區域進行管理,每一個區域由1臺或多臺DNS服務器負責解析,如果僅僅采用1臺DNS服務器,在DNS服務器出現故障后,用戶將無法完成解析。
輔助DNS服務器的優點
- 容災備份,減低業務終端風險
- 穩定可靠,保證業務穩定運行
- 負載均衡,減少主DNS網絡通信量
輔助DNS服務器的缺點
- 安全性的問題,輔助DNS存儲了主DNS相同的地址映射信息
- 數據同步問題,如果同步機制出現故障或配置不當,會影響解析結果
- 管理復雜性,管理員需要多管理一臺服務器
- 額外的網絡流量以及成本
2、區域傳送
為了保證地址映射信息一致,輔助DNS服務器需要和主DNS服務器進行同步,輔助DNS服務器從主DNS服務器上獲取區域解析文件的過程,稱為區域傳送。
區域傳送的兩種方式
- 完全區域傳輸
- 增量區域傳輸
當我們添加一臺新的輔助DNS服務器到域中時,輔助DNS服務器會執行一次完全區域傳送,從主DNS服務器上拷貝一份完整的區域解析文件;當主DNS服務器上的區文件改動后,輔助DNS服務器會執行增量區域傳輸,同步數據變化。
在區域傳送的過程中會一并發送SOA資源記錄。SOA中的serial字段表示區域數據的版本,refresh字段表示輔助DNS服務器下一次發送查詢的請求的時間間隔
3、拓撲及需求
正向記錄 | 反向記錄 | 資源記錄 |
---|---|---|
dns.meaauf.com | 192.168.10.1 | A/PTR |
www.meaauf.com | 192.168.10.2 | A/PTR |
web.meaauf.com | www.meaauf.com | CNAME |
mail.meaauf.com | 1921.68.10.3 | MX,10 |
二、主DNS服務器配置
詳情請看【RedHat9 | DNS剖析-配置主DNS服務器實例】
三、輔助DNS服務器配置
1、地址信息配置
配置IP地址
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.10.2/24 ipv4.dns 192.168.10.1
nmcli connection up ens160
查看IP地址信息及DNS
ip add show ens160
cat /etc/reslov.conf
2、YUM本地源配置
可以查看【RedHat9 | DNF/YUM倉庫管理軟件包】
3、關閉SELinux
修改配置文件以達到永久關閉
vim /etc/selinux/config
修改內容
SELINUX=disabled
重啟生效
reboot
查看重啟后SELinux的狀態
sestatus
4、安裝BIND9
安裝BIND9
dnf -y install bind
5、修改全局配置文件
編輯全局配置文件
vim /etc/named.conf
修改以下內容
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query { any; };
dnssec-validation no;
檢查配置文件語法
named-checkconf
6、修改區域配置文件
編輯區域配置文件
vim /etc/named.rfc1912.zones
添加正向區域和反向區域
zone "meaauf.com" IN {type slave; # 區域類型為:slavefile "slaves/meaauf.com.zone";
# 區域文件存儲路徑須在:slaves/目錄下,也就是/var/named/slaves/下masters { 192.168.10.1; }; # 主DNS服務器地址
};
zone "10.168.192.in-addr.arpa" IN {type slave;file "slaves/meaauf.com.ref";masters { 192.168.10.1; };
};
7、啟動DNS服務
啟動DNS服務并加入開機自啟
systemctl enable --now named.service
調整防火墻策略
firewalld-cmd --add-service=dns --permanent
firrwalld-cmd --reload
在啟動服務后,輔助DNS服務器會向主DNS服務器發送完全區域傳輸請求,然后主DNS服務器會作出反應,將區域完全傳輸至輔助DNS服務器
ll /var/named/slaves # 可以通過查看區域文件目錄內容
三、驗證記錄更新
1、查看主DNS的正向查找區域解析文件
cat /var/named/meaauf.com.zone
可以看到serial字段也就是區域數據版本為:0,也就是原始版本;refresh字段也就是刷新時間為1天
2、修改主DNS正向區域中的SOA記錄更新時間
原來的更新時間為1D,我們修改為10s
在輔助DNS上刪除主DNS傳送過來的所有解析文件
rm -f /var/named/slaves/meaauf.com.*
在輔助DNS上重新啟動DNS服務
systemctl restart named.service
3、修改主DNS解析記錄
我修改解析文件內容
vim /var/named/meaauf.com.zone
添加一條正向解析記錄,同時SOA序列號,也就是版本號
ftp A 192.168.10.10
重新啟動主DNS服務器上的DNS服務
systemctl restart named
輔助DNS上通過區域傳送接收到的文件亂碼無法查看,所以無法通過查看區域傳送文件驗證是否有更新,只能通過客戶端驗證
三、測試客戶端配置
1、地址信息配置
配置IP地址,將DNS指向輔助DNS服務器
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.10.10/24 ipv4.dns 192.168.10.1
nmcli connection up ens160
查看IP地址信息及DNS
ip add show ens160
cat /etc/reslov.conf
2、關閉SELinux
修改配置文件以達到永久關閉
vim /etc/selinux/config
修改內容
SELINUX=disabled
重啟生效
reboot
查看重啟后SELinux的狀態
sestatus
3、使用nslookup測試
正向解析
nslookup
> www.meaauf.com
> web.meaauf.com
> ftp.meaauf.com
反向解析
nslookup
> 192.168.10.1
> 192.168.10.2
> 192.168.10.3
郵件記錄解析
nslookup
> set type=MX
> meaauf.com