CentOS 7.4搭建DNS伺服器實現主從同步
相關概念:
正向解析:將域名解析成IP地址
反向解析:將IP地址解析成域名
第一步:準備工作
systemctl stop firewalld //關閉防火牆
setenforce 0 //關閉selinux
yum install bind //安裝DNS服務
第二步:編輯配置檔案
1.編輯主配置檔案
vi /etc/named.conf //主配置檔案
options {
listen-on port 53 { 192.168.80.101; }; //改成自己伺服器的IP
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; }; //任何人都可以訪問

named-checkconf //檢查語法錯誤

2.編輯區域配置檔案
vi /etc/named.rfc1912.zones
zone "hello.com" IN { //正向區域配置
type master;
file "hello.com.zone";
allow-update { none; };
};
zone "80.168.192.in-addr.arpa" IN { //反向區域配置
type master;
file "hello.com.local";
allow-update { none; };
};

named-checkconf

4.編輯區域資料配置檔案
cp -p named.localhost hello.com.zone
cp -p named.localhost hello.com.local
vi hello.com.zone //正向區域資料配置檔案
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh 天
1H ; retry 時
1W ; expire 周
3H ) ; minimum 快取
NS @
A 192.168.80.101 //本伺服器地址
www IN A 192.168.80.101 //www.hello.com對應的地址
ftp IN A 192.168.80.101 //ftp.hello.com對應的地址
mail IN CNAME www //mail.hello.com是www.hello.com的另一個名稱
-
IN A 192.168.80.6 //如果字尾是hello.com但是前面的內容記錄中沒有的時候向查詢主機返回192.168.80.6這個地址。 (*泛域名解析)
vi hello.com.local //反向區資料檔案
$TTL 1D
@ IN SOA hello.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.80.101
101 IN PTR www.hello.com. (PTR指標記錄)

named-checkconf
systemctl start named
vi /etc/resolv.conf //指定dns伺服器
nameserver 192.168.80.101

yum install bind-utils -y
nslookup www.hello.com

nslookup ftp.hello.com

nslookup 192.168.80.101

到此,DNS伺服器已搭建完成。
第三步、搭建主從同步
1、在主伺服器上:
vi /etc/named.rfc1912.zones //主伺服器操作
zone "hello.com" IN {
type master;
file "hello.com.zone";
allow-update { 192.168.80.102; }; ----允許從伺服器實時同步
also-notify { 192.168.80.102; }; ----另行通知
};

named-checkconf
2、在從伺服器上:
搭建DNS伺服器--------(參照上面配置)
yum install bind
vi /etc/named.conf

vi /etc/named.rfc1912.zones
zone "hello.com" IN {
type slave;
masters { 192.168.80.101; };
file "slaves/hello.com.zone";
allow-notify { 192.168.80.101; }; ----允許通知
};
zone "80.168.192.in-addr.arpa" IN {
type slave; //型別
masters { 192.168.80.101; };
file "slaves/hello.com.local";
allow-notify { 192.168.80.101; }; ----允許通知
};

named-checkconf
systemctl start named
netstat -anpu | grep name

cd /var/named/slaves/ 進入備份目錄,檢視區域檔案有木有備份過來

nslookup www.hello.com

nslookup 192.168.80.101

如上圖,表示DNS主從伺服器已同步。
測試實時同步:在主伺服器中修改正向區域配置檔案如下圖:

systemctl restart named //修改檔案後記得重啟一下
在主伺服器上解析:

在從伺服器上:

如上圖,表示已實時同步。
Linux公社的RSS地址 : ofollow,noindex" target="_blank">https://www.linuxidc.com/rssFeed.aspx
本文永久更新連結地址: https://www.linuxidc.com/Linux/2018-12/155644.htm