16.DNS实验
16 DNS实验
一、实现DNS正向主服务器
c7:master
[root@dns_master ~]#hostnamectl set-hostname dns_master.magedu.org
[root@dns_master ~]#yum -y install bind;systemctl enable --now named
[root@dns_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any; };
dnssec-enable no;
dnssec-validation no;
[root@dns_master ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type master;
file "magedu.org.zone";
};
[root@dns_master ~]#named-checkconf
[root@dns_master ~]#cp -p /var/named/named.localhost /var/named/magedu.org.zone
[root@dns_master ~]#vim /var/named/magedu.org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
1;
1H;
10M;
3D;
12H
);
NS master
master A 10.0.0.7
www A 10.0.0.17
[root@dns_master ~]#named-checkzone magedu.org /var/named/magedu.org.zone
zone magedu.org/IN: loaded serial 1
OK
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
c7 web
[root@dns_web ~]#hostnamectl set-hostname dns_web.magedu.org
[root@dns_web ~]#yum -y install httpd
[root@dns_web ~]#systemctl enable --now httpd
[root@dns_web ~]#echo www.magedu.org > /var/www/html/index.html
[root@dns_web ~]#systemctl start httpd
ubuntu101 client
[root@dns_client ~]#hostnamectl set-hostname dns_client.magedu.org
[root@dns_client ~]#yum -y install bind-utils;systemctl enable --now named
[root@dns_client ~]#vim /etc/netplan/01-netcfg.yaml
addresses: [10.0.0.7]
[root@dns_client ~]#netplan apply
[root@dns_client ~]#dig www.magedu.org @10.0.0.7
; <<>> DiG 9.11.3-1ubuntu1.15-Ubuntu <<>> www.magedu.org @10.0.0.7
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52178
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 8f87a4d4fe8bc752b33af8806162d380ee6ad0dc11a0855f (good)
;; QUESTION SECTION:
;www.magedu.org. IN A
;; ANSWER SECTION:
www.magedu.org. 86400 IN A 10.0.0.17
;; AUTHORITY SECTION:
magedu.org. 86400 IN NS master.magedu.org.
;; ADDITIONAL SECTION:
master.magedu.org. 86400 IN A 10.0.0.7
;; Query time: 0 msec
;; SERVER: 10.0.0.7#53(10.0.0.7)
;; WHEN: Sun Oct 10 19:50:29 HKT 2021
;; MSG SIZE rcvd: 124
二、实现DNS从服务器
c7:master
[root@dns_master ~]#hostnamectl set-hostname dns_master.magedu.org
[root@dns_master ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any; };
allow-transfer { 10.0.0.8;};
dnssec-enable no;
dnssec-validation no;
[root@dns_master ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type master;
file "magedu.org.zone";
};
[root@dns_master ~]#named-checkconf
[root@dns_master ~]#cp -p /var/named/named.localhost /var/named/magedu.org.zone
[root@dns_master ~]#vim /var/named/magedu.org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
1;
1H;
10M;
3D;
12H
);
NS master
NS slave
master A 10.0.0.7
slave A 10.0.0.8
www A 10.0.0.17
[root@dns_master ~]#named-checkzone magedu.org /var/named/magedu.org.zone
zone magedu.org/IN: loaded serial 1
OK
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
C8从节点
[root@dns_slave ~]#hostnamectl set-hostname dns_slave.magedu.org
[root@dns_slave ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_slave ~]#vim /etc/named.conf
options {
// listen-on port 53 { localhost; };
// allow-query { any;};
allow-transfer { none;};
[root@dns_slave ~]#named-checkconf
[root@dns_slave ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type slave;
masters { 10.0.0.7;}; #主节点ip
file "slaves/magedu.org.slave";
};
[root@dns_slave ~]#systemctl srart named
Unknown operation srart.
#文件自动从主节点传过来
[root@dns_slave ~]#ls /var/named/slaves/magedu.org.slave
/var/named/slaves/magedu.org.slave
c17 web
[root@dns_web ~]#hostnamectl set-hostname dns_web.magedu.org
[root@dns_web ~]#yum -y install httpd
[root@dns_web ~]#systemctl enable --now httpd
[root@dns_web ~]#echo www.magedu.org > /var/www/html/index.html
[root@dns_web ~]#systemctl start httpd
ubuntu101 client
[root@dns_client ~]#hostnamectl set-hostname dns_client.magedu.org
[root@dns_client ~]#yum -y install bind-utils;systemctl enable --now named
[root@dns_client ~]#vim /etc/netplan/01-netcfg.yaml
addresses: [10.0.0.7,10.0.0.8]
[root@dns_client ~]#netplan apply
[root@dns_client ~]#dig www.magedu.org @10.0.0.7
[root@dns_client netplan]#dig www.magedu.org @10.0.0.8
; <<>> DiG 9.11.3-1ubuntu1.15-Ubuntu <<>> www.magedu.org @10.0.0.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37675
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: 08b9b3e1b24d5273923ae156616400775a1603e1ada418a8 (good)
;; QUESTION SECTION:
;www.magedu.org. IN A
;; ANSWER SECTION:
www.magedu.org. 86400 IN A 10.0.0.17
;; AUTHORITY SECTION:
magedu.org. 86400 IN NS slave.magedu.org.
magedu.org. 86400 IN NS master.magedu.org.
;; ADDITIONAL SECTION:
master.magedu.org. 86400 IN A 10.0.0.7
slave.magedu.org. 86400 IN A 10.0.0.8
;; Query time: 0 msec
;; SERVER: 10.0.0.8#53(10.0.0.8)
;; WHEN: Mon Oct 11 17:14:26 HKT 2021
;; MSG SIZE rcvd: 160
如果将主、丛节点都关闭,客户端还可以curl到,那就说明ubuntu有缓存
三、反向解析 PRT
#在10.0.0.8上实现
[root@centos8 ~]# cat /etc/named.conf
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };
[root@centos8 ~]# vim /etc/named.rfc1912.zones
zone "0.0.10.in-addr.arpa" {
type master;
file "10.0.0.zone";
};
[root@centos8 ~]# cp -p /var/named/named.loopback /var/named/10.0.0.zone
[root@centos8 ~]# ll /var/named
total 24
-rw-r----- 1 root named 168 Aug 25 01:31 10.0.0.zone
drwxrwx--- 2 named named 23 Jan 6 19:38 data
drwxrwx--- 2 named named 60 Jan 6 19:39 dynamic
-rw-r----- 1 root named 2253 Aug 25 01:31 named.ca
-rw-r----- 1 root named 152 Aug 25 01:31 named.empty
-rw-r----- 1 root named 152 Aug 25 01:31 named.localhost
-rw-r----- 1 root named 168 Aug 25 01:31 named.loopback
-rw-r----- 1 root named 200 Jan 6 19:36 neteagles.vip.zone
drwxrwx--- 2 named named 6 Aug 25 01:31 slaves
[root@centos8 ~]# vim /var/named/10.0.0.zone
$TTL 1D
@ IN SOA ns1 admin.neteagles.vip. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns1.neteagles.vip.
100 PTR www.neteagles.vip.
200 PTR app.zhang.vip.
:wq
[root@centos8 ~]# rndc reload
server reload successful
[root@centos6 ~]# dig -t ptr 100.0.0.10.in-addr.arpa @10.0.0.8
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.8 <<>> -t ptr 100.0.0.10.in-addr.arpa @10.0.0.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58766
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;100.0.0.10.in-addr.arpa. IN PTR
;; ANSWER SECTION:
100.0.0.10.in-addr.arpa. 86400 IN PTR www.neteagles.vip.
;; AUTHORITY SECTION:
0.0.10.in-addr.arpa. 86400 IN NS ns1.neteagles.vip.
;; Query time: 1 msec
;; SERVER: 10.0.0.8#53(10.0.0.8)
;; WHEN: Wed Jan 6 19:56:38 2021
;; MSG SIZE rcvd: 102
[root@centos6 ~]# dig -x 10.0.0.100 @10.0.0.8
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.8 <<>> -x 10.0.0.100 @10.0.0.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35405
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;100.0.0.10.in-addr.arpa. IN PTR
;; ANSWER SECTION:
100.0.0.10.in-addr.arpa. 86400 IN PTR www.neteagles.vip.
;; AUTHORITY SECTION:
0.0.10.in-addr.arpa. 86400 IN NS ns1.neteagles.vip.
;; Query time: 0 msec
;; SERVER: 10.0.0.8#53(10.0.0.8)
;; WHEN: Wed Jan 6 19:57:12 2021
;; MSG SIZE rcvd: 102
[root@centos6 ~]# host 10.0.0.100
100.0.0.10.in-addr.arpa domain name pointer www.neteagles.vip.
[root@centos6 ~]# nslookup 10.0.0.200
Server: 10.0.0.8
Address: 10.0.0.8#53
200.0.0.10.in-addr.arpa name = app.zhang.vip.
[root@centos6 ~]# nslookup
> 10.0.0.100
Server: 10.0.0.8
Address: 10.0.0.8#53
100.0.0.10.in-addr.arpa name = www.neteagles.vip.
> exit
c7
yum -y intall bind-utils
gid -t ptr 10.0.0.100.in-addr.arpa. @10.0.0.18
四、在父域DNS服务器上实现magedu.org域的主DNS服务
父域:www.magedu.org
子域:www.shanghai.magedu.org
c7:master
[root@dns_master ~]#hostnamectl set-hostname dns_master.magedu.org
[root@dns_master ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any; };
allow-transfer { 10.0.0.8;};
dnssec-enable no;
dnssec-validation no;
[root@dns_master ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type master;
file "magedu.org.zone";
};
[root@dns_master ~]#named-checkconf
[root@dns_master ~]#cp -p /var/named/named.localhost /var/named/magedu.org.zone
[root@dns_master ~]#vim /var/named/magedu.org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
2;
1H;
10M;
3D;
12H
);
NS master
NS slave
shanghai NS shanghains
master A 10.0.0.7
slave A 10.0.0.8
shanghains A 10.0.0.18
www A 10.0.0.17
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
[root@dns_master ~]#named-checkzone magedu.org /var/named/magedu.org.zone
zone magedu.org/IN: loaded serial 1
OK
[root@dns_master network-scripts]#rndc reload
server reload successful
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
c18
[root@dns_shanghai ~]#hostnamectl set-hostname dns_shanghai.mageduorg
[root@dns_shanghai ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_shanghai ~]#vim /etc/named.conf
options {
//listen-on port 53 { localhost; };
// allow-query { any;};
allow-transfer { none;};
[root@dns_shanghai ~]#vim /etc/named.rfc1912.zones
zone "shanghai.magedu.org" IN {
type master;
file "shanghai.magedu.org.zone";
};
[root@dns_shanghai ~]#named-checkconf
[root@dns_shanghai ~]#vim /var/named/shanghai.magedu.org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
1
1H
10M
3D
12H )
NS master
master A 10.0.0.28
www A 10.0.0.7
[root@dns_shanghai ~]#named-checkzone shanghai.magedu.org /varhanghai.magedu.org.zone
zone shanghai.magedu.org/IN: loaded serial 1
OK
[root@dns_master network-scripts]#rndc reload
server reload successful
c27 web-magedu
[root@dns_shanghai_web ~]#hostnamectl set-hostname dns_shanghai_web.magedu.org
[root@dns_shanghai_web ~]#yum -y install httpd
[root@dns_shanghai_web ~]#systemctl enable --now httpd
[root@dns_shanghai_web ~]#echo www.shanghai.magedu.org >> /var/www/html/index.html
[root@dns_shanghai_web ~]#systemctl start httpd
c37 web-magedu
ubuntu 101
dig www.shanghai.magedu.org
五、实现DNS forward(缓存)服务器
c7:master
[root@dns_master ~]#hostnamectl set-hostname dns_master.magedu.org
[root@dns_master ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any;};
allow-transfer { 10.0.0.8;};
dnssec-enable no;
dnssec-validation no;
[root@dns_master ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type master;
file "magedu.org.zone";
};
[root@dns_master ~]#named-checkconf
[root@dns_master ~]#cp -p /var/named/named.localhost /var/named/magedu.org.zone
[root@dns_master ~]#vim /var/named/magedu.org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
2;
1H;
10M;
3D;
12H
);
NS master
NS slave
shanghai NS shanghains
master A 10.0.0.7
slave A 10.0.0.8
shanghains A 10.0.0.18
www A 10.0.0.17
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
[root@dns_master ~]#named-checkzone magedu.org /var/named/magedu.org.zone
zone magedu.org/IN: loaded serial 1
OK
[root@dns_master network-scripts]#rndc reload
server reload successful
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
c28
[root@dns_forword ~]#hostnamectl set-hostname dns_forword.magedu.org
[root@dns_forword ~]#yum -y install bind bind-utils;systemctl enable -now bind
[root@dns_forword ~]#vim /etc/named.conf
options {
// listen-on port 53 { localhost; };
// allow-query { any;};
forwark first;
forwarders { 10.0.0.7;};
dnssec-enable no;
dnssec-validation no;
[root@dns_forword ~]#rndc reload
c27 web
[root@dns_shanghai_web ~]#hostnamectl set-hostname dns_forward.magedu.org
[root@dns_forward ~]#yum -y install httpd
[root@dns_forward ~]#systemctl enable --now httpd
[root@dns_forward ~]#echo www.forward.magedu.org >> /var/www/html/index.html
[root@dns_forward ~]#systemctl start httpd
ubuntu18
dig
六、利用view实现智能DNS
DNS服务器的网卡配置
#在10.0.0.8上实现
[root@centos8 ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:3f:19:17 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.8/24 brd 10.0.0.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3f:1917/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:3f:19:21 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.8/24 brd 192.168.1.255 scope global noprefixroute eth1
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe3f:1921/64 scope link
valid_lft forever preferred_lft forever
主DNS服务端配置文件实现view
#在10.0.0.8上实现
[root@centos8 ~]# dnf -y install bind
[root@centos8 ~]# vim /etc/named.conf
#在文件最前面加下面行
acl beijingnet {
10.0.0.0/24;
};
acl shanghainet {
192.168.1.0/24;
};
acl othernet {
any;
};
#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };
#创建view
view beijingview {
match-clients {beijingnet;};
include "/etc/named.rfc1912.zones.bj";
};
view shanghaiview {
match-clients {shanghainet;};
include "/etc/named.rfc1912.zones.sh";
};
view otherview {
match-clients {othernet;};
include "/etc/named.rfc1912.zones.other";
};
:wq
实现区域配置文件
#在10.0.0.8上实现
[root@centos8 ~]# vim /etc/named.rfc1912.zones.bj
zone "." IN {
type hint;
file "named.ca";
};
zone "neteagles.vip" {
type master;
file "neteagles.vip.zone.bj";
};
:wq
[root@centos8 ~]# vim /etc/named.rfc1912.zones.sh
zone "." IN {
type hint;
file "named.ca";
};
zone "neteagles.vip" {
type master;
file "neteagles.vip.zone.sh";
};
:wq
[root@centos8 ~]# vim /etc/named.rfc1912.zones.other
zone "." IN {
type hint;
file "named.ca";
};
zone "neteagles.vip" {
type master;
file "neteagles.vip.zone.other";
};
:wq
[root@centos8 ~]# ll /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bj /etc/named.rfc1912.zones.sh /etc/named.rfc1912.zones.other
-rw-r----- 1 root named 1029 Aug 25 01:31 /etc/named.rfc1912.zones
-rw-r--r-- 1 root root 132 Jan 7 14:33 /etc/named.rfc1912.zones.bj
-rw-r--r-- 1 root root 135 Jan 7 14:36 /etc/named.rfc1912.zones.other
-rw-r--r-- 1 root root 132 Jan 7 14:35 /etc/named.rfc1912.zones.sh
[root@centos8 ~]# chmod 640 /etc/named.rfc1912.zones.bj;chgrp named /etc/named.rfc1912.zones.bj
[root@centos8 ~]# chmod 640 /etc/named.rfc1912.zones.sh;chgrp named /etc/named.rfc1912.zones.sh
[root@centos8 ~]# chmod 640 /etc/named.rfc1912.zones.other;chgrp named /etc/named.rfc1912.zones.other
[root@centos8 ~]# ll /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bj /etc/named.rfc1912.zones.sh /etc/named.rfc1912.zones.other
-rw-r----- 1 root named 1029 Aug 25 01:31 /etc/named.rfc1912.zones
-rw-r----- 1 root named 132 Jan 7 14:33 /etc/named.rfc1912.zones.bj
-rw-r----- 1 root named 135 Jan 7 14:36 /etc/named.rfc1912.zones.other
-rw-r----- 1 root named 132 Jan 7 14:35 /etc/named.rfc1912.zones.sh
创建区域数据库文件
#在10.0.0.8上实现
[root@centos8 ~]# cp -p /var/named/named.localhost /var/named/neteagles.vip.zone.bj
[root@centos8 ~]# vim /var/named/neteagles.vip.zone.bj
$TTL 1D
@ IN SOA master admin.neteagles.vip. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS master
master A 10.0.0.8
websrv A 10.0.0.7
www CNAME websrv
:wq
[root@centos8 ~]# cp -p /var/named/neteagles.vip.zone.bj /var/named/neteagles.vip.zone.sh
[root@centos8 ~]# vim /var/named/neteagles.vip.zone.sh
$TTL 1D
@ IN SOA master admin.neteagles.vip. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS master
master A 10.0.0.8
websrv A 192.168.1.7
www CNAME websrv
:wq
[root@centos8 ~]# cp -p /var/named/neteagles.vip.zone.bj /var/named/neteagles.vip.zone.other
[root@centos8 ~]# vim /var/named/neteagles.vip.zone.other
$TTL 1D
@ IN SOA master admin.neteagles.vip. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS master
master A 10.0.0.8
websrv A 127.0.0.1
www CNAME websrv
:wq
[root@centos8 ~]# ll /var/named/neteagles.vip.zone.*
-rw-r----- 1 root named 240 Jan 7 14:45 /var/named/neteagles.vip.zone.bj
-rw-r----- 1 root named 241 Jan 7 14:48 /var/named/neteagles.vip.zone.other
-rw-r----- 1 root named 244 Jan 7 14:47 /var/named/neteagles.vip.zone.sh
[root@centos8 ~]# systemctl enable --now named
#启动服务报错
[root@centos8 ~]# cat /var/log/messages
Jan 7 14:50:21 centos8 bash[10314]: /etc/named.conf:73: when using 'view' statements, all zones must be in views #提示/etc/named.conf的73出错
[root@centos8 ~]# vim /etc/named.conf
#注释掉下面内容
#zone "." IN {
# type hint;
# file "named.ca";
#};
#注释掉这行
#include "/etc/named.rfc1912.zones";
:wq
[root@centos8 ~]# systemctl start named
实现位于不同区域的三个WEB服务器
#分别在三台主机上安装http服务
#在web服务器1:192.168.1.8/24上实现
[root@centos8 ~]# dnf -y install httpd;echo www.neteagles.vip in other> /var/www/html/index.html;systemctl enable --now httpd
[root@centos8 ~]# curl 192.168.1.8
www.neteagles.vip in other
#在web服务器2:10.0.0.7/24上实现
[root@centos7 ~]# yum -y install httpd;echo www.neteagles.vip in beijing> /var/www/html/index.html;systemctl enable --now httpd
[root@centos7 ~]# curl 10.0.0.7
www.neteagles.vip in beijing
#在web服务器3:192.168.1.7/24上实现
[root@centos7-2 ~]# yum -y install httpd;echo www.neteagles.vip in shanghai> /var/www/html/index.html;systemctl enable --now httpd
[root@centos7-2 ~]# curl 192.168.1.7
www.neteagles.vip in shanghai
客户端测试
#分别在三台主机上访问
#在DNS客户端1:10.0.0.6/24上实现,确保DNS指向10.0.0.8
[root@centos6 ~]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search localdomain neteagles.cn
nameserver 10.0.0.8
[root@centos6 ~]# curl www.neteagles.vip
www.neteagles.vip in beijing
#在DNS客户端1:192.168.1.6/24上实现,确保DNS指向192.168.1.8
[root@centos6 network-scripts]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search localdomain neteagles.cn
nameserver 192.168.1.8
[root@centos6 ~]# curl www.neteagles.vip
www.neteagles.vip in shanghai
#在DNS客户端3:10.0.0.8/24上实现,确保DNS指向127.0.0.1
[root@centos8 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 127.0.0.1
[root@centos8 ~]# curl www.neteagles.vip
www.neteagles.vip in other
七、实战案例:综合案例,实现Internet的DNS服务架构
实现web服务
#centos67
[root@dns_web ~]#hostnamectl set-hostname dns_web.magedu.org
[root@dns_web ~]#yum -y install httpd
[root@dns_web ~]#systemctl enable --now httpd
[root@dns_web ~]#echo www.magedu.org > /var/www/html/index.html
[root@dns_web ~]#systemctl start httpd
[root@dns_web ~]#curl 10.0.0.67
www.magedu.org
实现magedu.org域的主DNS服务器
#centos47
[root@dns_master ~]#hostnamectl set-hostname dns_master.magedu.org
[root@dns_master ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any; };
allow-transfer { 10.0.0.57;};
dnssec-enable no;
dnssec-validation no;
[root@dns_master ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type master;
file "magedu.org.zone";
};
[root@dns_master ~]#named-checkconf
[root@dns_master ~]#cp -p /var/named/named.localhost /var/named/magedu.org.zone
[root@dns_master ~]#vim /var/named/magedu.org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
1;
1H;
10M;
3D;
12H
);
NS master
NS slave
master A 10.0.0.47
slave A 10.0.0.57
www A 10.0.0.67
[root@dns_master ~]#named-checkzone magedu.org /var/named/magedu.org.zone
zone magedu.org/IN: loaded serial 1
OK
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
实现magedu.org域的从DNS服务器配置
#centos57
[root@dns_slave ~]#hostnamectl set-hostname dns_slave.magedu.org
[root@dns_slave ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_slave ~]#vim /etc/named.conf
options {
// listen-on port 53 { localhost; };
// allow-query { any;};
allow-transfer { none;};
[root@dns_slave ~]#named-checkconf
[root@dns_slave ~]#vim /etc/named.rfc1912.zones
zone "magedu.org" IN {
type slave;
masters { 10.0.0.47;};
file "slaves/magedu.org.slave";
};
[root@dns_slave ~]#systemctl srart named
Unknown operation srart.
#文件自动从主节点传过来
[root@dns_slave ~]#ls /var/named/slaves/magedu.org.slave
/var/named/slaves/magedu.org.slave
实现org域的主DNS服务器
#centos37
[root@dns_org_master ~]#hostnamectl set-hostname dns_org_master.magedu.org
[root@dns_org_master ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_org_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any; };
dnssec-enable no;
dnssec-validation no;
[root@dns_org_master ~]#vim /etc/named.rfc1912.zones
zone "org" IN {
type master;
file "org.zone";
};
[root@dns_org_master ~]#named-checkconf
[root@dns_org_master ~]#cp -p /var/named/named.localhost /var/named/org.zone
[root@dns_master ~]#vim /var/named/org.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
1;
1H;
10M;
3D;
12H
);
NS master
org Ns orgns
master A 10.0.0.27
orgns A 10.0.0.37
[root@dns_org_master ~]#named-checkzone org /var/named/magedu.org.zone
zone org/IN: loaded serial 1
OK
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
实现根域的主DNS服务器
#centos27
[root@dns_root_master ~]#hostnamectl set-hostname dns_root_master.magedu.org
[root@dns_root_master ~]#yum -y install bind bind-utils;systemctl enable --now named
[root@dns_root_master ~]#vim /etc/named.conf
options {
// listen-on port 53 { 127.0.0.1; };
// allow-query { any; };
dnssec-enable no;
dnssec-validation no;
[root@dns_root_master ~]#vim /etc/named.rfc1912.zones
zone "." IN {
type master;
file "root.zone";
};
[root@dns_root_master ~]#named-checkconf
[root@dns_root_master ~]#cp -p /var/named/named.localhost /var/named/root.zone
[root@dns_master ~]#vim /var/named/root.zone
$TTL 1D
@ IN SOA master admin.magedu.org. (
1;
1H;
10M;
3D;
12H
);
NS master
magedu Ns magedus1
magedu Ns magedus2
master A 10.0.0.37
magedus1 A 10.0.0.47
magedus2 A 10.0.0.57
[root@dns_root_master ~]#named-checkzone root /var/named/root.zone
zone root/IN: loaded serial 1
OK
#如果没有-p,需要加文件权限,执行一下命令
#chmod 640 /var/named/magedu.org.zone
#chown .named /var/named/magedu.org.zone
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务
实现转发目标的DNS服务器
#centos17
[root@dns_forword ~]#hostnamectl set-hostname dns_forword.magedu.org
[root@dns_forword ~]#yum -y install bind bind-utils;systemctl enable -now bind
[root@dns_forword ~]#vim /etc/named.conf
options {
// listen-on port 53 { localhost; };
// allow-query { any;};
dnssec-enable no;
dnssec-validation no;
[root@dns_forword ~]#vim /var/named/named.ca
. 518400 IN NS a.root-servers.net.
a.root-servers.net. 3600000 IN A 10.0.0.27
[root@dns_forword ~]#rndc reload
实现本地只缓存DNS服务器
#centos7
[root@dns_local_forword ~]#hostnamectl set-hostname dns_local_forword.magedu.org
[root@dns_local_forword ~]#yum -y install bind bind-utils;systemctl enable -now bind
[root@dns_local_forword ~]#vim /etc/named.conf
options {
// listen-on port 53 { localhost; };
// allow-query { any;};
forward only;
forwarders {10.0.0.17;};
dnssec-enable no;
dnssec-validation no;
[root@dns_local_forword ~]#rndc reload
客户端
#ubuntu100
[root@dns_client ~]#hostnamectl set-hostname dns_client.magedu.org
[root@dns_client ~]#vim /etc/netplan/01-netcfg.yaml
addresses: [10.0.0.7]
[root@dns_client ~]#netplan apply
[root@dns_client ~]#cat /etc/resolv.conf
nameserver 10.0.0.7
[root@dns_client ~]#curl www.magedu.org
www.magedu.org
[root@dns_client ~]# dig www.baidu.org

浙公网安备 33010602011771号