Trong bài viết trước tôi đã hướng dẫn các bạn cách cấu hình một DNS Server trên CentOS 7 . Mục tiêu của tôi trong bài này là tiếp tục hướng dẫn bạn dựng 2 DNS server , với 1 Master DNS  và 1 Slave DNS server  dùng để dự phòng khi máy chủ DNS chính ngưng hoạt động

Để tiếp tục bài hướng dẫn này , bạn cần phải có 2 máy CentOS 7 . Cách cấu hình Master DNS tôi đã đề cập trong bài viết trước bạn có thể xem tại

Cấu hình DNS Server trên CentOS 7

Trong bài này tôi sẽ tập trung vào bổ sung một số phần trên Master DNS server và cấu hình Master DNS server

Host              Role          Private FQDN Private IP Address
server1 Master DNS Server server1.adminvietnam.org 172.16.1.125
server2 Slave DNS Server server2.adminvietnam.org 172.16.1.126

 

1.Master DNS

Chỉnh sửa file named.conf , thêm một số dòng

Trước tiên chúng ta sẽ thêm dòng bên dưới để server lắng nghe trên port 53 , localhost và IP 172.16.1.125

options
{
listen-on port 53 { 127.0.0.1; 172.16.1.125; };
...

Để các máy client có thể phân giải được một số tên miền hoặc địa chỉ IP không có trong DNS server ta cần forward lời đề nghị đó đến một DNS server khác , ở đây tôi chọn DNS Server của Google

...
directory "/var/named";
forwarders {8.8.8.8; };
...

Tiếp theo tôi sẽ bổ sung các dòng cho phép các DNS phân giải trên đường mạng 172.16.1.0 và cho phép tranfer sang máy Slave DNS 172.16.1.126

allow-query {localhost; 172.16.1.0; };
allow-transfer {localhost; 172.16.1.126; };               ## IP Slave Server
recursion no;
};

Tiếp tục ta thêm một số dòng cho Forward Zone , cho phép tự động cập nhật trên đường mạng 172.16.1.0/24 và transfer sang máy Slave DNS 172.16.1.126 . Ở đây chúng ta đang cấu hình trên máy Master DNS nên typemaster

zone "adminvietnam.org" in {
type master;
file "adminvietnam.db";
allow-update { 172.16.1.0/24; };
allow-transfer {172.16.1.126; };
};

Tương tự chúng ta cũng thêm ở phần Reverse Zone

zone "1.16.172.in-addr.arpa" in {
type master;
file "1.16.172.db";
allow-update { 172.16.1.0/24; };
allow-transfer {172.16.1.126; };
};

File named.conf sau khi chỉnh sửa xong

named

Bạn có thể tải file named.conf tại https://goo.gl/b7XQnO

Chỉnh sửa Forward Zone file

/var/named/adminvietnam.db
$TTL      86400
@         IN            SOA        server1.adminvietnam.org. root (
                                   3;
                                   28800;
                                   7200;
                                   604800;
                                   86400;
)
; Name server's

@          IN           NS         server1.adminvietnam.org.
@          IN           NS         server2.adminvietnam.org.

; Name server hostname to IP resolve

@          IN           A          172.16.1.125
@          IN           A          172.16.1.126

; Hosts in Domain

server1    IN            A         172.16.1.125
server2    IN            A         172.16.1.126

www        IN            CNAME       server1
ftp        IN            CNAME       server1
mail       IN            CNAME       server1

Bạn có thể tải file adminvietnam.db tại https://goo.gl/LU8NyE

Chỉnh sửa Reverse Zone file

nano /var/1.16.172.db
$TTL    86400
@          IN       SOA        server1.adminvietnam.org. root.(
                               3;
                               28800;
                               7200;
                               604800;
                               86400;
)
; Name server's
@          IN        NS        server1.adminvietnam.org.
@          IN        NS        server2.adminvietnam.org.
@          IN        PTR       adminvietnam.org.

; Name server hostname to IP resolve.
server1    IN         A        172.16.1.125
server2    IN         A        172.16.1.126

; Hosts in Domain

125        IN         PTR      server1.adminvietnam.org.
126        IN         PTR      server2.adminvietnam.org.

Bạn có thể tải file 1.16.172.db tại https://goo.gl/8duLcM

Bạn có thể tải file localhost.db và file 0.0.127.db tại https://goo.gl/aCaJA7 & https://goo.gl/vA54mc

Thiết lập firewall

firewall-cmd --permanent --zone=public --add-service=dns
firewall-cmd --reload

Khởi động Bind trên Master DNS

systemctl start named
systemctl enable named

Kiểm tra trên máy Master DNS

dig adminvietnam.org
dig -x 172.16.1.125

test on primary DNS

2. Slave DNS

Đặt IP tĩnh cho máy

nano /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=172.16.1.126
PREFIX=24
GATEWAY=172.16.1.254
DNS1=172.16.1.126
DNS2=172.16.1.125

Cài đặt Bind

yum install bind* -y

Chỉnh sửa file named.conf

nano /etc/named.conf

với phần options ta chỉ sửa địa chỉ IP thành IP của máy Slave

options
{
listen-on port 53 { 127.0.0.1; 172.16.1.126; };
query-source port 53;
query-source-v6 port 53;
directory "/var/named";
forwarders {8.8.8.8; };
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 { localhost; 172.16.1.0/24; };
};

Tiếp theo ta sửa Forward Zone , Reverse Zone và type

zone "." in {
type hint;
file "named.root";
};

zone "adminvietnam.org" in {
type slave;
file "adminvietnam.db"
masters { 172.16.1.125; };
};

zone "1.16.172.in-addr.arpa" in {
type slave;
file "1.16.172.db"
masters {172.16.1.125; };
};

Bạn có thể tại file named.conf cho Slave tại https://goo.gl/TyI9P4

Tạo các file Forward và Reverse như trên , chúng ta có thể chép 2 file này từ máy Master sang máy Slave theo đường dẫn /var/named/

Sau khi đã hoàn thành ta khởi động Bind

systemctl start named
systemctl enable named

Thiết lập Firewall

firewall-cmd --permanent --zone=public --add-service=dns
firewall-cmd --reload

Kiểm tra trên máy Slave DNS

dig adminvietnam.org
dig -x 172.16.1.126

Capture

LuanPM – Adminvietnam.org

Chia sẻ