域名系统(DNS)的起源与发展、原理及解析流程
BIND是什么

WHO

WHEN

WHAT

WHY

WHERE

HOW

BUT

实训目的

1.掌握LINUX系统下主DNS服务器的配置
2.掌握LINUX系统下主从DNS服务器同步的配置方法
3.掌握LINUX系统下DNS正向解释区域文件的配置方法
4.掌握LINUX系统下DNS反向解释区域文件的配置方法
5.掌握DNS的常用检测命令的使用方法

项目设计

前置

端口

:53

说明&命令

bind是DNS服务器软件 ,服务名称是named
正向代理和反向代理详解(纯小白必看 最好懂的白话文教程)
正向代理:小学生假装大学生到小卖部买烟
反向代理:小学生从大学生手里买烟,大学生从小卖部进货

一、DNS正向解释

1、准备三台虚拟机,分别作为主DNS,从DNS,以及客户端

2、主从DNS(域名dns1)服务器上安装DNS软件包

[root@centos-a1 ~]# yum install bind -y
[root@centos-a2 ~]# yum install bind -y

3、配置主DNS的主配文件,增加mmnl.edu的区域字段

bind9named.conf详解
named.conf 详解
bind服务4—主配置文件详解
dnssec 详解需要慢慢分析

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// See the BIND Administrator's Reference Manual (ARM) for details about the
// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
// 由 Red Hat 绑定包提供,用于配置 ISC BIND named(8) DNS
// 服务器作为仅缓存的名称服务器(仅作为 localhost DNS 解析器)。
//
// 参见 /usr/share/doc/bind*/sample/ 例如命名的配置文件。
//
// 有关位于 /usr/share/doc/bind-{version}/Bv9ARM.html 中的配置的详细信息,请参阅 BIND 管理员参考手册 (ARM)
options {设定全局配置选项和默认值listen-on port 53 { 127.0.0.1; };指定在[$IP]地址上面的[$PORT]端口提供服务,默认为53listen-on-v6 port 53 { ::1; };在ipv6地址上监听directory       "/var/named";服务器的工作目录dump-file       "/var/named/data/cache_dump.db";当执行rndc dumpdb时服务器dump文件的路径statistics-file "/var/named/data/named_stats.txt";执行rndc stats将服务器的统计信息写入文件,默认为named.statsmemstatistics-file "/var/named/data/named_mem_stats.txt";默认为named.memestats,当退出的服务的时候将服务器的统计信息写到文件中.recursing-file  "/var/named/data/named.recursing";secroots-file   "/var/named/data/named.secroots";allow-query     { localhost; };指定哪个服务器可以进行普通DNS查询,如果在zone中指定,将覆盖全局参数,默认允许来自全部主机的查询./* - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.- If you are building a RECURSIVE (caching) DNS server, you need to enable recursion. - If your recursive DNS server has a public IP address, you MUST enable access control to limit queries to your legitimate users. Failing to do so willcause your server to become part of large scale DNS amplification attacks. Implementing BCP38 within your network would greatlyreduce such attack surface */* - 如果您正在构建 AUTHORITATIVE DNS 服务器,请不要启用递归。 - 如果您正在构建 RECURSIVE(缓存)DNS 服务器,则需要启用递归。- 如果您的递归 DNS 服务器有一个公共 IP 地址,您必须启用访问控制以限制对您的合法用户的查询。否则将导致您的服务器成为大规模 DNS 放大攻击的一部分。在您的网络中实施 BCP38 将大大减少此类攻击面 *recursion yes;递归查询dnssec-enable yes;是否支持DNSSEC开关,默认为yes,DNSSEC 是防止任何 DNS 攻击媒介dnssec-validation yes;是否进行DNSSEC确认开关,默认为no,是解析服务器对响应的记录进行验证的功能,必须是信任链可信的域名才行,默认auto ,开启这个功能递归服务器就会去验证是否可信任/* Path to ISC DLV key *//* ISC DLV 密钥的路径 */bindkeys-file "/etc/named.root.key";managed-keys-directory "/var/named/dynamic";pid-file "/run/named/named.pid";服务器记录进程ID的文件路径.session-keyfile "/run/named/session.key";
};logging {定义bing服务的日志, channel -> categroy.channel default_debug {file "data/named.run";severity dynamic;};
};zone "." IN {定义一个区域type hint;
区域Type:
master: 主域服务
slave: 从域服务
stub: 只复制主域的NS记录,属于BIND特有功能.
hint: 设定初始化设置根域服务器所用的参数.
forward: 域转发设置
delegation-only: 设定返回为NXDOMAIN?file "named.ca";
};include "/etc/named.rfc1912.zones";表示当前的dns服务器当中,申明区域文件是谁。
include "/etc/named.root.key";密钥。当dns服务器无法解析的时候,就会把请求发送到根dns上,但是根dns不允许被任何人访问,于是需要一种认证机制,这里的认证就是密钥

将全局里的监听IP和允许谁查询改为any,将DNSSEC两个选项关闭

listen-on port 53 { any; };
allow-query {any;};
dnssec-enable no;
dnssec-validation no;

再增加mmnl.edu区域字段

zone "mmnl.edu" IN {type master;主域服务file "mmnl.edu.zone";
};

4、主DNS上创建区域文件(带权限),并增加授权区域dns1,NS纪录dns1,以及对应的A记录、web的A记录和别名www

DNS服务详解(解析+搭建)
DNS服务和BIND

[root@centos-a1 ~]# cd /var/named
[root@centos-a1 named]# ll
total 16
drwxrwx--- 2 named named    6 Feb 24 01:17 data
drwxrwx--- 2 named named    6 Feb 24 01:17 dynamic
-rw-r----- 1 root  named 2253 Apr  5  2018 named.ca
-rw-r----- 1 root  named  152 Dec 15  2009 named.empty
-rw-r----- 1 root  named  152 Jun 21  2007 named.localhost
-rw-r----- 1 root  named  168 Dec 15  2009 named.loopback
drwxrwx--- 2 named named    6 Feb 24 01:17 slaves
[root@centos-a1 named]# cp named.localhost mmnl.edu.zone -p
`必须加p拷贝,文件的属组必须是named,
如果不加p,属组会改变,那么域名解析将不可能成功`
会出现以下情况
[root@centos7-a3 ~]# ping www.mmnl.edu
ping: www.mmnl.edu: Name or service not known
[root@centos7-a3 ~]# curl www.mmnl.edu
curl: (6) Could not resolve host: www.mmnl.edu; Unknown error
[root@centos7-a3 ~]# nslookup www.mmnl.edu
Server:         192.168.111.21
Address:        192.168.111.21#53** server can't find www.mmnl.edu: SERVFAIL
$TTL 1D域名有效解析生存周期(一般指缓存时间)
@       IN SOA  @ rname.invalid. (
@:代表域名本身
SOA:SOA标记(起始授权机构的资源记录,描述了域名的管理员、电子邮件地址和一些时间参数)0       ; serial配置文件修改版本(如:20190826)1D      ; refresh更新频率(从向主的查询周期)1H      ; retry更新失败的重试时间周期1W      ; expire无法更新时的失效周期3H )    ; minimum缓存服务器无法更新的失效时间NS      @设置DNS服务器的域名A       127.0.0.1IPV4的域名IP解析记录AAAA    ::1IPV6的域名IP解析记录
SOA(起始授权记录)1、记录提供有关dns区域工作方式的信息(描述域名的管理员、电子邮件地址、时间参数)2、具体来说就是当前主机具体负责哪个区域的解析   3、指定某个DNS服务提供解析NS 1、将自己的域名映射到DNS服务器上 2、将域名最终映射到哪一台主机(由哪一台主机去解析当前所定义的域主机)   3、标记DNS服务器注意:SOA是标明了要解析的域、一个主服务器,、NS是标明了本机的域名,多个服务器A (ipv4地址记录)1、将主机名映射到ipv4地址2、这是正向域名解析地址,即将域名解析成IPCNAME (规范名称):记录域别名PTR(指针记录)1、将IPV4 IPV6地址映射到主机名用于反向DNS反向解析2、反向解析是将IP地址解析为域名AAAA (IPV6 地址记录) :资源记录(四A记录)将主机名映射到ipv6地址
MX (邮件交换记录):  标记邮件服务器serial number:   序列号 定义当前使用的数据序列号   sn遵循“年+月+日+编号” 主和从的更新依据
refresh:  定义检查间隔时间  (上次和这次变化的时间)
retry:        重试时间  < 检查时间>
expire:        过期时间  缓存放多久过期
negative answer ttl:  否定答案的缓存时长(没有指定生存期的数据可以保存在数据中的时间及TTL值)存放不能解析的域名,下次访问直接返回不能解析时间单位:M(分钟)、H(小时)、D(天)、W(周),默认单位是秒

配置过程详见
DNS中NS和SOA区别

$TTL 1D
@       IN SOA  mmnl.edu. rname.invalid. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimum
@       IN NS   dns1.mmnl.edu.
dns1    IN A    192.168.111.21
web     IN A    192.168.111.10
www     IN CNAME web

5、启动DNS服务并设置自动运行,检测DNS服务监听端口

[root@centos-a1 named]# systemctl start named
[root@centos-a1 named]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
[root@centos-a1 named]# netstat -an | grep :53
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN
tcp        0      0 192.168.111.21:42389    192.203.230.10:53       TIME_WAIT
tcp        0      0 192.168.111.21:59742    192.203.230.10:53       TIME_WAIT
tcp6       0      0 ::1:53                  :::*                    LISTEN
udp        0      0 127.0.0.1:53            0.0.0.0:*
udp        0      0 192.168.122.1:53        0.0.0.0:*
udp        0      0 0.0.0.0:5353            0.0.0.0:*
udp6       0      0 ::1:53                  :::*

如果启动失败,尝试检查配置文件

[root@centos-a1 named]# named-checkconf /etc/named.conf
[root@centos-a1 named]# named-checkzone mmnl.edu /var/named/mmnl.edu.zone
zone mmnl.edu/IN: loaded serial 0
OK

6、配置客户端的DNS地址指向主DNS服务器(配置前测试域名)

[root@centos7-a3 ~]# nslookup localhost
Server:         192.168.111.21
Address:        192.168.111.21#53

7、使用ping命令测试内网以及外网域名解释,查看确认

[root@centos7-a3 ~]# ping www.mmnl.edu
PING www.mmnl.edu (192.168.111.10) 56(84) bytes of data.
From centos7-a3 (192.168.111.23) icmp_seq=1 Destination Host Unreachable
From centos7-a3 (192.168.111.23) icmp_seq=2 Destination Host Unreachable
From centos7-a3 (192.168.111.23) icmp_seq=3 Destination Host Unreachable
From centos7-a3 (192.168.111.23) icmp_seq=4 Destination Host Unreachable
^C
--- www.mmnl.edu ping statistics ---
5 packets transmitted, 0 received, +4 errors, 100% packet loss, time 4002ms

8、使用nslookup命令测试内网以及外网域名解释,查看确认

nslookup命令详解

[root@centos7-a3 ~]# nslookup www.mmnl.edu
Server:         192.168.111.21
Address:        192.168.111.21#53Name:   www.mmnl.edu
Address: 192.168.111.10
[root@centos7-a3 ~]# nslookup www.baidu.com
Server:         192.168.111.21
Address:        192.168.111.21#53Non-authoritative answer:
www.baidu.com   canonical name = www.a.shifen.com.
Name:   www.a.shifen.com
Address: 14.215.177.38
Name:   www.a.shifen.com
Address: 14.215.177.39

9、使用dig命令测试内网以及外网域名解释,查看确认

dig命令
dig命令详解
工控网络基础入门篇之如何用 Dig命令检查域名的解析
F5 GTM DNS 知识点和实验 3 -加速dns解析
wireshark筛选dhcp包_使用wireshark抓包工具,对DHCP、HTTP、DNS的数据包进行分析

[root@centos7-a3 ~]# dig www.mmnl.edu +short
192.168.111.10
[root@centos7-a3 ~]# dig www.baidu.com +short
www.a.shifen.com.
14.215.177.39
14.215.177.38
[root@centos7-a3 ~]# dig www.baidu.com; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36871
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 6
QR:查询/.响应 Query/Response,指明数据包是查询还是响应
AA:权威应答 Authoritative Answer,表示由域内权威域名服务器发出的
TC:截断 Truncation,指明响应太长,无法装入数据包而被截断
RD:期望递归 Recursion Desired,表示客户端在目标服务器不含请求信息时要求递归查询
RA:可用递归 Recursion Available,表示域名服务器支持递归查询
Z:保留
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.                 IN      A;; ANSWER SECTION:
www.baidu.com.          291     IN      CNAME   www.a.shifen.com.
www.a.shifen.com.       300     IN      A       14.215.177.39
www.a.shifen.com.       300     IN      A       14.215.177.38;; AUTHORITY SECTION:
a.shifen.com.           293     IN      NS      ns3.a.shifen.com.
a.shifen.com.           293     IN      NS      ns1.a.shifen.com.
a.shifen.com.           293     IN      NS      ns2.a.shifen.com.
a.shifen.com.           293     IN      NS      ns4.a.shifen.com.
a.shifen.com.           293     IN      NS      ns5.a.shifen.com.;; ADDITIONAL SECTION:
ns1.a.shifen.com.       293     IN      A       110.242.68.42
ns5.a.shifen.com.       293     IN      A       180.76.76.95
ns3.a.shifen.com.       293     IN      A       112.80.255.253
ns2.a.shifen.com.       293     IN      A       220.181.33.32
ns4.a.shifen.com.       293     IN      A       14.215.177.229;; Query time: 47 msec
;; SERVER: 192.168.111.21#53(192.168.111.21)
;; WHEN: Mon Jun 20 12:09:17 CST 2022
;; MSG SIZE  rcvd: 271[root@centos7-a3 ~]# dig www.mmnl.edu; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> www.mmnl.edu
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31734
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.mmnl.edu.                  IN      A;; ANSWER SECTION:
www.mmnl.edu.           86400   IN      A       192.168.111.10;; AUTHORITY SECTION:
mmnl.edu.               86400   IN      NS      dns1.mmnl.edu.;; ADDITIONAL SECTION:
dns1.mmnl.edu.          86400   IN      A       192.168.111.21;; Query time: 1 msec
;; SERVER: 192.168.111.21#53(192.168.111.21)
;; WHEN: Mon Jun 20 12:10:50 CST 2022
;; MSG SIZE  rcvd: 92

10、测试百度域及主机的A、NS、MX记录,查看确认

[root@centos-a3 named]# dig -t A www.baidu.com  +short
www.a.shifen.com.
14.215.177.39
14.215.177.38
[root@centos-a3 named]# dig -t NS www.baidu.com  +short
www.a.shifen.com.
[root@centos-a3 named]# dig -t MX www.baidu.com  +short
www.a.shifen.com.
[root@centos7-a3 ~]# dig -t A www.mmnl.edu +short
192.168.111.10
[root@centos7-a3 ~]# dig -t NS www.mmnl.edu +short
[root@centos7-a3 ~]# dig -t MX www.mmnl.edu +short

11、配置主DNS服务器关闭递归查询,测试内网以及外网域名解释,对比结果,确认权威应答

什么是递归查询,迭代查询?
DNS的递归查询和迭代查询

[root@centos-a1 named]# vim /etc/named.conf recursion no;关闭递归查询后,bind采用迭代查询
[root@centos-a1 named]# systemctl restart named
[root@centos7-a3 ~]# dig www.mmnl.edu @192.168.111.21; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> www.mmnl.edu @192.168.111.21
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25067
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; WARNING: recursion requested but not available
`报错:递归请求但不可用,即有rd,但没ra`
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.mmnl.edu.                  IN      A;; ANSWER SECTION:
www.mmnl.edu.           86400   IN      A       192.168.111.10;; AUTHORITY SECTION:
mmnl.edu.               86400   IN      NS      dns1.mmnl.edu.;; ADDITIONAL SECTION:
dns1.mmnl.edu.          86400   IN      A       192.168.111.21;; Query time: 0 msec
;; SERVER: 192.168.111.21#53(192.168.111.21)
;; WHEN: Mon Jun 20 12:43:29 CST 2022
;; MSG SIZE  rcvd: 92[root@centos7-a3 ~]# dig www.baidu.com @192.168.111.21; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> www.baidu.com @192.168.111.21
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: `REFUSED`, id: 45394
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available
`同样报错,但是refused,因为关闭了递归查询,所以客户端无法向服务器查询`
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.                 IN      A;; Query time: 0 msec
;; SERVER: 192.168.111.21#53(192.168.111.21)
;; WHEN: Mon Jun 20 12:43:31 CST 2022
;; MSG SIZE  rcvd: 42

二、DNS反向解释

反向DNS和PTR记录

1、编辑主DNS的编辑配置,增加域名反向解释区域字段

[root@centos-a1 ~]# vim /etc/named.conf
zone "111.168.192.in-addr.arpa" IN {type master;file "192.168.111.zone";
};

2、主DNS上创建反解区域文件(带权限),并增加授权区域dns1,NS记录dns1,以及对应的PTR记录,重启主DNS服务

[root@centos-a1 ~]# cd /var/named/
[root@centos-a1 named]# ll
total 24
drwxrwx--- 2 named named   23 Jun 20 11:31 data
drwxrwx--- 2 named named   60 Jun 20 13:04 dynamic
-rw-r----- 1 root  named  219 Jun 20 11:44 mmnl.edu.zone
-rw-r----- 1 root  root   152 Jun 20 10:38 mmnl.edu.zone.test
-rw-r----- 1 root  named 2253 Apr  5  2018 named.ca
-rw-r----- 1 root  named  152 Dec 15  2009 named.empty
-rw-r----- 1 root  named  152 Jun 21  2007 named.localhost
-rw-r----- 1 root  named  168 Dec 15  2009 named.loopback
drwxrwx--- 2 named named    6 Feb 24 01:17 slaves
[root@centos-a1 named]# cp named.loopback 192.168.111.zone -p
[root@centos-a1 named]# vim 192.168.111.zone A       127.0.0.1AAAA    ::1
$TTL 1D
@       IN SOA  mmnl.edu. rname.invalid. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumIN NS   dns1.mmnl.edu.
dns1    IN A    192.168.111.21
21      IN PTR  dns1.mmnl.edu.
10      IN PTR  www.mmnl.edu.

3、使用nslookup命令测试域名反解,查看确认

[root@centos7-a3 ~]# nslookup 192.168.111.21
21.111.168.192.in-addr.arpa     name = dns1.mmnl.edu.

4、使用dig命令测试域名反解,查看确认

[root@centos7-a3 ~]# dig -x 192.168.111.21 ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> -x 192.168.111.21
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2157
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;21.111.168.192.in-addr.arpa.   IN      PTR;; ANSWER SECTION:
21.111.168.192.in-addr.arpa. 86400 IN   PTR     dns1.mmnl.edu.;; AUTHORITY SECTION:
111.168.192.in-addr.arpa. 86400 IN      NS      dns1.mmnl.edu.;; ADDITIONAL SECTION:
dns1.mmnl.edu.          86400   IN      A       192.168.111.21;; Query time: 0 msec
;; SERVER: 192.168.111.21#53(192.168.111.21)
;; WHEN: Mon Jun 20 17:50:45 CST 2022
;; MSG SIZE  rcvd: 113

三、DNS主从配置

辅助域名服务器的概念和作用
辅域名服务器(SLAVE)-dns详细解析
辅助DNS服务器提供区域冗余,能够在这个区域的主服务器停止响应的情况下为客户端解析这个区域的DNS名称
辅域名服务器(SLAVE)
英文叫做slave server(bind9以后)或secondary server(bind4)
辅助域名服务器使用一个叫域传输的复制过程,调入其他域名服务器的内容。但通常情况下,数据是直接从主服务器上传输过来。使用辅助域名服务器的主要目的是实现容错和工作负载的分担。
特点:
1、一个域内可以由多个辅助域名服务器。
2、配置辅助域名服务器不需要编写hosts文件,它从主域名服务器上得到。

1、主DNS上增加从DNS(dns2)的正解及反解记录,并重启服务

[root@centos-a1 named]# vim mmnl.edu.zone
$TTL 1D
@       IN SOA  mmnl.edu. rname.invalid. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumIN NS   dns1.mmnl.edu.IN NS   dns2.mmnl.edu.
dns1    IN A    192.168.111.21
dns2    IN A    192.168.111.22
www     IN A    192.168.111.10
web     IN CNAME www
[root@centos-a1 named]# vim 192.168.111.zone
$TTL 1D
@       IN SOA  mmnl.edu. rname.invalid. (0       ; serial1D      ; refresh1H      ; retry1W      ; expire3H )    ; minimumIN NS   dns1.mmnl.edu.IN NS   dns2.mmnl.edu.
21      IN PTR  dns1.mmnl.edu.
22      IN PTR  dns2.mmnl.edu.
10      IN PTR  www.mmnl.edu.
10      IN PTR  web.mmnl.edu.
[root@centos-a1 named]# systemctl restart named
`dig检验`
[root@centos-a1 named]# dig dns2.mmnl.edu @192.168.111.21 +short
192.168.111.22
[root@centos-a1 named]# dig -x 192.168.111.22 @192.168.111.21 +short
dns2.mmnl.edu.
`无误`

2、从DNS上配置正解和反解区域字段(指向主),并启动服务

zone "mmnl.edu" IN {type slave;file "slaves/mmnl.edu.zone";masters { 192.168.111.21; };};
zone "111.168.192.in-addr.arpa" IN {type slave;file "slaves/192.168.111.zone";masters { 192.168.111.21; };
};
[root@centos-a2 slaves]# netstat -ltnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN      6995/X
tcp        0      0 192.168.111.22:53       0.0.0.0:*               LISTEN      62236/named
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      62236/named
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      6809/dnsmasq
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      6509/sshd
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      6508/cupsd
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      62236/named
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      6780/master
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd
tcp6       0      0 :::6000                 :::*                    LISTEN      6995/X
tcp6       0      0 ::1:53                  :::*                    LISTEN      62236/named
tcp6       0      0 :::22                   :::*                    LISTEN      6509/sshd
tcp6       0      0 ::1:631                 :::*                    LISTEN      6508/cupsd
tcp6       0      0 ::1:953                 :::*                    LISTEN      62236/named
tcp6       0      0 ::1:25                  :::*                    LISTEN      6780/master
[root@centos-a2 slaves]# ll
total 8
-rw-r--r-- 1 named named 410 Jun 20 20:03 192.168.111.zone
-rw-r--r-- 1 named named 337 Jun 20 20:03 mmnl.edu.zone

查看区域文件会出现乱码
详见
Centos7 bind服务器主从同步,从服务器区域文件乱码

3、设置客户端的DNS地址指向从DNS服务器(或@服务器),测试域名解释结果,查看确认

[root@centos7-a3 ~]# nslookup localhost
Server:         192.168.111.22
Address:        192.168.111.22#53Name:   localhost
Address: 127.0.0.1
Name:   localhost
Address: ::1
[root@centos7-a3 ~]# dig www.mmnl.edu @192.168.111.22 ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.9 <<>> www.mmnl.edu @192.168.111.22
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26671
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.mmnl.edu.                  IN      A;; ANSWER SECTION:
www.mmnl.edu.           86400   IN      A       192.168.111.10;; AUTHORITY SECTION:
mmnl.edu.               86400   IN      NS      dns1.mmnl.edu.
mmnl.edu.               86400   IN      NS      dns2.mmnl.edu.;; ADDITIONAL SECTION:
dns1.mmnl.edu.          86400   IN      A       192.168.111.21
dns2.mmnl.edu.          86400   IN      A       192.168.111.22;; Query time: 2 msec
;; SERVER: 192.168.111.22#53(192.168.111.22)
;; WHEN: Mon Jun 20 20:15:31 CST 2022
;; MSG SIZE  rcvd: 127

4、在主DNS上,增加ftp的A记录,并重启服务。客户端测试ftp域名在从DNS服务器上的解释,确认结果(区域文件的序列号)

DNS 序列号概念
文件的序列号,当修改文件后需要增加该值的大小,使得主DNS通知辅DNS服务器zone数据文件需要重新更新了。一般用修改当天的时间和当天第几次修改就可以了

`正向`
2022062001      ; serial
ftp     IN A    192.168.111.11
[root@centos7-a3 ~]# dig ftp.mmnl.edu @192.168.111.22 +short
192.168.111.11

5、主DNS上每个区域设置为不允许更新数据(allow-update)

BIND配置文件详解(转)

zone "mmnl.edu" IN {type master;file "mmnl.edu.zone";allow-update { none; };
};
zone "111.168.192.in-addr.arpa" IN {type master;file "192.168.111.zone";allow-update { none; };
};

6、主DNS上正解区域设置指定传送对象为从DNS服务器,反解区域指定传送对象为其他设备(allow-transfer)

allow-transfer
设定哪台主机允许和本地服务器进行域传输。allow-transfer也可以设置在zone语句中,这样全局options中的allow-transfer选项在这里就不起作用了。如果没有设定,默认值是允许和所有主机进行域传输。

zone "mmnl.edu" IN {type master;file "mmnl.edu.zone";allow-update { none; };allow-transfer { 192.168.111.22; };
};
zone "111.168.192.in-addr.arpa" IN {type master;file "192.168.111.zone";allow-update { none; };allow-transfer { 192.168.111.222; };
};

7、在主DNS服务器上,增加ftp的PTR记录,修改序号并重启服务

`反向`
2022062001      ; serial
11      IN PTR  ftp.mmnl.edu.
`如果不修改序列号,则文件不会更新,会出现查询为空的情况`
[root@centos7-a3 ~]# dig -x 192.168.111.11 +short
[root@centos7-a3 ~]     返回值为空
`所以必须修改序列号,使得从域更新文件`
[root@centos7-a3 ~]# dig -x 192.168.111.11 +short
ftp.mmnl.edu.

8、客户端测试ftp域名反解在从DNS服务器上的解释结果

[root@centos7-a3 ~]# dig -x 192.168.111.12 +short
ftp.mmnl.edu.
查询结果为之前的反解文件,说明从域未更新反向区域文件

9、主DNS上配置反解区域指定传送到从DNS,再次测试ftp域名反解在从DNS服务器上解释结果,查看确认

zone "111.168.192.in-addr.arpa" IN {type master;file "192.168.111.zone";allow-update { none; };allow-transfer { 192.168.111.22; };
};
[root@centos7-a3 ~]# dig -x 192.168.111.11 @192.168.111.22 +short
ftp.mmnl.edu.

自测

centos7 dns配置_CentOS7服务器配置课程自测题目(完整版)

安全&优化

见下章

Linux实训项目——第十一章:基础DNS服务器与主从同步相关推荐

  1. linux实训项目——飞鸽(一)

    目前完成UDP广播上线.用户间对话功能. 目录 目录 前言 一.基础知识 二."飞鸽"运行流程 1.用户运行程序后先设置用户名,即上线后别人看到的名字. 2.上线后进行UDP广播, ...

  2. 计算机应用基础实训项目三excel,计算机应用基础实训项目三 Excel 综合应用

    计算机应用基础实训项目三 Excel 综合应用Tag内容描述: 1.计算机应用基础实训教程计算机应用基础实训项目二,Word,综合应用 以日常应用为基础,设计一个综合运用 Word 基本操作技能解决实 ...

  3. Linux实训项目二 用户和组的管理

    实训项目 用户和组的管理 一.实训目的 ● 熟悉Linux用户的访问权限. ● 掌握在Linux系统中增加.修改.删除用户或用户组的方法. ● 掌握用户账户管理及安全管理. 二.项目背景 某公司有60 ...

  4. Linux实训项目——第九章:配置与管理Samba服务器

    Samba--跨平台网络文件共享系统 概述 Samba系统--百度百科 什么是samba Samba--维基百科 是种用来让UNIX系列的作业系统与微软Windows作业系统的SMB/CIFS(Ser ...

  5. Linux实训项目——第十章(下):配置DHCP中继服务

    实训目的 6.掌握LINUX下DHCP中继代理的配置方法 项目设计 一.配置DHCP中继代理 DHCP中继代理 DHCPRelay(DHCPR)DHCP中继 也叫做DHCP中继代理.DHCP中继代理, ...

  6. 计算机应用基础实训指导教程 王,计算机应用基础案例教程及实训指导-第2章___Windows操...

    计算机应用基础案例教程及实训指导-第2章___Windows操 (11页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.9 积分 第2章中文WinXP ...

  7. 计算机基础操作与应用实训教程,计算机应用基础实训教程の第 3 章 Word 2003 基本操作.pdf...

    计算机应用基础实训教程の第 3 章 Word 2003 基本操作.pdf (37页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.9 积分 第 3 章 ...

  8. Kail Linux渗透测试实训手册第3章信息收集

    Kail Linux渗透测试实训手册第3章信息收集 信息收集是网络攻击最重要的阶段之一.要想进行渗透攻击,就需要收集目标的各类信息.收集到的信息越多,攻击成功的概率也就越大.本章将介绍信息收集的相关工 ...

  9. 实训项目2Linux基本命令,实训项目2 Linux文件系统管理

    实训项目2 Linux文件系统管理 发布时间:2011-06-24 15:51:10来源:红联作者:397778823 一. 实训目的: 1. 掌握磁盘分区的方法: 2. 掌握文件系统的建立.挂装.解 ...

最新文章

  1. centos安装 ping 命令 ( yum provides )
  2. oracle遇null赋默认值,使用hibernate annotation 为非空列加上默认值
  3. plotplay恢复默认设置_PotPlayer如何调整常用设置?PotPlayer调整常用设置的方法步骤...
  4. php libxml 宝塔,宝塔编译安装各个版本php无法安装
  5. C语言试题六十三之请编写函数fun:将s所指字符串中ascii值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。
  6. 阿里云 centos7 配置SSH 从无到有
  7. 【转】iphone开发中NSMutableAttributedString/NSAttributedString 富文本设置
  8. 计算机控制直流电机闭环调速实验报告,电气工程及其自动化电力系统实训报告-基于PLC的直流电机调速实验.pdf...
  9. 虚拟机virtualBox
  10. Python入门--顺序结构,选择结构,对象的布尔值
  11. 少量数据通过Excel表格数据导入server SqlServer查询
  12. 智能控制器在风机及水泵中的应用
  13. 携程数据分析笔试第一题
  14. 中学计算机兴趣小组 计划,陵口中学科技兴趣小组工作计划
  15. 大话西游片尾曲-一生所爱(世界是巨大的枷锁,你不得不重复自己或是别人的生活)
  16. 极客日报第 40 期:小米 11 发布,售价 3999 元起;罗永浩回应败诉半导体公司
  17. EEPROM存储芯片24C02
  18. (一)SDRAM——SDRAM入门介绍
  19. sqlserver快捷键设置
  20. oracle months_between week,ORACLE MONTHS_BETWEEN函数使用

热门文章

  1. 新版HyperMesh的Assemblies中调出下拉菜单查看Component(装配关系模型树)
  2. 当遇到火狐浏览器“建立安全连接失败”问题,处理方法
  3. Ebean报错java.lang.ClassCastException: com.project.model.xxx cannot be cast to com.project.model.xxx
  4. 大数据与人工智能催生智能时代
  5. 上海户口中的计算机水平评分,上海落户打分细则
  6. 怎么退出自适应巡航_什么是ACC自适应巡航
  7. (二)验证码模块(随机英文验证and随机英文数字混合验证+Session)
  8. 数据分析从零到精通第二课 Hive和Spark入门
  9. 玩转 IDEA 系列教程——强烈推荐官方中文(汉化)插件!
  10. 表格自适应 css,css 表格自适应一些方法总结