DNS从入门到精通

news2024/11/17 5:23:31

DNS从入门到精通


Dns从入门到精通

  • DNS从入门到精通
  • 一、DNS原理
  • 二、企业高速缓存dns的搭建
  • 三、DNS相关名词解释
  • 四、权威DNS搭建
    • 编辑子配置文件(主要写我们维护的域zone)
    • 开始解析
  • 五、权威dns中的数据记录种类及应用
    • 编辑子配置文件(主要写我们维护的域zone)
    • 开始解析
  • 六、权威dns的双向解析
    • 搭建权威dns双向解析的过程
  • 七、辅助DNS集群
    • 解决问题
    • 辅助dns的搭建
    • 测试这个辅助dns服务起来没
  • 八、辅助dns集群数据不同步问题解决方案
    • 更新域以后数据不同步
    • 解决方法
    • 自动化同步数据
    • 测试自动化同步数据dns
    • 测试失败原因
    • 测试自动化
  • 九、A记录中辅助dns的相关参数
  • 十、A记录中dns版本号


一、DNS原理

你要连接外网时,运营商的主机dns,帮你把域名解析成ip。
1~5为企业的主机,当都需要上外网,如果都先访问远程的运营商的dns就会特别慢,并且加大企业的带宽,所以我们需要搭建一个高速缓存dns,就是企业一个主机作为高速缓存dns,如1,当2~5要访问某个域名比如baidu,先问1有无baidu的域名的ip,内网比外网快,如果有直接取1的biadu域名ip,如果没有,1去访问dns,取baidu的域名ip,2~5再去1取。
在这里插入图片描述

二、企业高速缓存dns的搭建

搭建环境前提,虚拟机1server10可以连接外网,虚拟机2、3server11 12不可以连接外网,但是都可以和虚拟机1通信。
需要用到host和dig指令,安装包bind-utils。
dig 域名解析工具 host域名和ip互查
在/etc/sysconfig/network-scripts/ifcfg-eth0下的dns记录在
/etc/resolv.conf

[root@server10 ~]# cat /etc/resolv.conf
nameserver 114.114.114.114
[root@server10 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
BOOTPROTO=static
DEVICE=eth0
ONBOOT=yes
IPADDR1=172.25.138.10
IPADDR2=172.25.254.100
PREFIX1=24
PREFIX2=24
GATEWAY=172.25.138.250
DNS1=114.114.114.114
[root@server11 ~]# cat /etc/resolv.conf
nameserver 172.25.254.100
[root@server12 ~]# cat /etc/resolv.conf
nameserver 172.25.254.100

在这里插入图片描述

虚拟机1要对外提供dns服务的话,必须安装bind

[root@server10 ~]# yum install bind -y
[root@server10 ~]# systemctl enable --now named
[root@server10 ~]# firewall-cmd --permanent --add-service=dns
Warning: ALREADY_ENABLED: dns
success

在这里插入图片描述

打开这个服务后依旧不可以访问dns,需要修改dns的主配置文件,让它对外提供这个服务

[root@server10 ~]# yum install -y net-tools
[root@server10 ~]# netstat -antlpe
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      25         47225      15021/named         

默认安装的dns服务只开启了回环接口上的服务端口,除本机以外无法使用。

主配置文件名字

[root@server10 ~]# vim /etc/named.conf 

在这里插入图片描述

改成
在这里插入图片描述
本机所有网络接口都开启53端口对外提供dns服务
在这里插入图片描述服务被拒绝了
在配置主配置文件,原先是localhost;
在这里插入图片描述

改成any;为所有主机提供解析服务

[root@server10 ~]# systemctl restart named
[root@server11 ~]# dig www.baidu.com
;; Query time: 1863 msec

[root@server12 yum.repos.d]# dig www.baidu.com
;; Query time: 0 msec

当前的dns主机没有网络地址解析数据的,所以当做解析时需要到.com主机获取资源。
dns是树,dns最顶级. .叫根域名
在这里插入图片描述先去dns要这个解析,dns没有,dns去.com里面找,.com没有去.找到。 .一共有13个
现在去的是美国找的花费时间太长了
在这里插入图片描述
当dns没有数据时,去访问国内的dns,不去美国。
然而你dns没有经过网络认证备案,所以得把dns的认证自检,要不然修改后依旧慢。
在这里插入图片描述
这叫高速缓存dns

[root@server11 ~]# dig www.csdn.com
;; Query time: 32 msec
[root@server12 yum.repos.d]# dig www.csdn.com
;; Query time: 0 msec

三、DNS相关名词解释

server10为服务端,其余server11 server12客户端

关于客户端:
/etc/resolv.conf dns指向文件
nameserver 172.25.138.10(访问的服务端)
测试:
dig 网址 host 网址
A记录 ip地址叫做域名的Address记录

[root@server11 ~]# dig www.baidu.com
;; QUESTION SECTION:
;www.baidu.com.			IN	A

;; ANSWER SECTION:
www.baidu.com.		32	IN	CNAME	www.a.shifen.com.
www.a.shifen.com.	158	IN	A	36.152.44.96
www.a.shifen.com.	158	IN	A	36.152.44.95

SOA 授权起始主机

[root@server12 ~]# dig haha.hehe.heihei
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 5265  没有这个网站
.3600	IN	SOA	a.root-servers.net. nstld.verisign-grs.com. 2021060400 1800 900 604800 86400

NXDOMAIN 全世界没有这个网址
nstld.verisign-grs.com 它对NXDOMAIN这个说法负责,这个网站告诉你没有,你要是有问题联系这个网站。

dns顶级(权威dns) .13个.目录
次级 .com .net .edu .org …

高速缓存dns都是缓存顶级dns,高速缓存dns叫做非权威dns,有A记录信息的叫做权威dns

服务端:bind 安装包
named 服务名称
/etc/named.conf 主配置文件
/var/named 数据目录
端口 53

关于报错信息: 1 no server could be reached 服务无法访问(服务开启?火墙?网络?端口?)
2 服务启动失败 配置文件写错 journalctl -xe 查询错误

dig 查询状态
NOERROR 表示查询成功
REFUSED 服务拒绝访问 (端口?允许服务对象?)
SERVFAIL 查询记录失败,(dns服务器无法到达上级,拒绝缓存) 提供不了这个网址解析,不代表这个网址没有。比如你的高速缓存dns不能上网,无法访问上一级,或者跳到.com .里面查询。
NXDOMAIN 此域名A记录在dns中不存在

[root@server11 ~]# dig www.baidu.com
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45828

在status查看状态

四、权威DNS搭建

对公司内部主机自己解析,搭建自己的dns,dns的正向解析,不去问别人,用自己的数据
对/etc/named.conf(主配置文件)进行编辑

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

dnssec-validation no; 要关掉,因为你没有备案,安全检测浪费时间。

include :主配置文件里面包含了一个文件
在这里插入图片描述

不包含这样写
)

在这里插入图片描述
zone 后面维护的域名
type master 主dns
file 记录在westos.org.zone 这个文件在电脑没有,自己手工建立

由于维护的域名在生产环境中有很多个,这样会让你的主配置文件变得很长,在排错或者阅读麻烦

所以,我们把zone语句块都独立到子配置文件里面

include "/etc/named.rfc1912.zones";

所以我们的zone 一般写在子配置文件里面

编辑子配置文件(主要写我们维护的域zone)

这个zone是已知的,企业中别人叫你写什么,你写什么

zone "westos.org" IN {
                type master;
               file "westos.org.zone";
               allow-update {none;};
};

"westos.org" 要维护的域名
master  dns为主dns 权威dns
westos.org.zone A 记录解析文件,这个文件没有,需要我们自己建立

## A记录解析文件存放的目录,生成A记录文件

```bash
[root@server10 ~]# cd /var/named/
[root@server10 named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves

named.localhost 这个是我们A记录解析文件模板
在这里插入图片描述
由于这些文件的属性有特殊属性
所以复制时要加-p,复制时也复制文件的权限

[root@server10 named]# cp -p named.localhost westos.org.zone
[root@server10 named]# vim westos.org.zone 

在这里插入图片描述
TTL time to life 1D表示缓存最长时间为1天,你来问网址解析,dns读这个A记录文件,你再来问网址解析,dns不读这个文件,直接把缓存信息给你
当解析变了,要重启服务,重启服务后,缓存会删掉(刷新),你在来问时,会在读一次这个文件
因为缓存速度比阅读文件速度快

@的值等于你在子配置文件zone后面引号的里面的内容,你A记录解析文件是为子配置文件服务的。
在这里插入图片描述
@的值 westos.org
在这个文件中,所有不用以.结尾的字符串都会自动补齐@的值
在这里插入图片描述test的真实值为test.westos.org

SOA授权机制,客户在解析遇到的问题,授权机制会显示出来,公司会给定这个信息的
在这里插入图片描述
当解析出现问题时,你对这个解析有疑问,你访问这个网址
在这里插入图片描述
serial 刷新标识
refresh 辅助dns重新刷新的时间
retry 刷新时,需要重新到dns取数据,失败了,再次取数据1h
expire 取的时候,连续不成功,1周后宣布dns停止工作
minimum 最小时间,连续刷新时间最小3h

在这里插入图片描述
NS name server 域名服务器的名称
A A记录一个A ipv4
AAAA ipv6
在这里插入图片描述
后面要加.要不然自动补齐成 dns.westos.org.westos.org

在这里插入图片描述
dns 因为 **dns.**wetos.org.
第一个要对NS主机进行解析
在这里插入图片描述
www 解析111,111主机有跟dns无关,你访问不了,那是111的的问题,这里面所有的A记录都是公司制定的,要是访问不了,跟dns配置无关,需要找111
dns只负责解析,解析能否访问与dns无关,111跟公司的定制单有关。

最后书写形式

$TTL 1D
@       IN SOA  dns.westos.org. root.westos.org.I (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.org.
dns     A       172.25.254.100
www     A       172.25.254.111

重启有问题,证明你的配置错了

[root@server10 named]# systemctl restart named
Job for named.service failed because the control process exited with error code. See "systemctl status named.service" and "journalctl -xe" for details.
[root@server10 named]# > /var/log/messages
[root@server10 named]# systemctl restart named
Job for named.service failed because the control process exited with error code. See "systemctl status named.service" and "journalctl -xe" for details.
[root@server10 named]# journalctl -xe
Jun 05 06:29:50 server10 bash[3648]: /etc/named.rfc1912.zones:42: open: /etc/named.rfc1912.zones: too many open files

Jun 05 06:32:33 server10 bash[3691]: /etc/named.rfc1912.zones:43: unknown option '43'
Jun 05 06:32:33 server10 bash[3691]: /etc/named.rfc1912.zones:44: unknown option '44'
Jun 05 06:32:33 server10 bash[3691]: /etc/named.rfc1912.zones:46: unexpected token near '}'

所以要修改我们的子配置文件
也可以这样看

[root@server10 named]# > /var/log/messages
[root@server10 named]# systemctl restart named
[root@server10 named]# cat /var/log/messages

开始解析

[root@server11 ~]# dig www.westos.org


在这里插入图片描述www.westos.org 地址解析是172.25.254.111
域名服务器 dns.westos.org
dns.westos.org 的域名ip 172.25.254.100
状态NOERROR

[root@server11 ~]# dig hello.westos.org
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 60207
SOA	dns.westos.org. root.westos.org.I.westos.org.

hello 当前主机没有,A记录没有,就去外网找了,就跳到它的上一级,.org里面去找了
找不到,全世界没有
SOA dns.westos.org. root.westos.org.I.westos.org.为这个说法负责全世界没有

[root@server10 named]# dig linux.westos.org

; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> linux.westos.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 42145
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;linux.westos.org. IN A

;; AUTHORITY SECTION:
westos.org. 10800 IN SOA dns.westos.org. root.westos.org.I.westos.org. 0 86400 3600 604800 10800

;; Query time: 0 msec
;; SERVER: 172.25.254.100#53(172.25.254.100)
;; WHEN: Sat Jun 05 06:48:28 CST 2021
;; MSG SIZE rcvd: 103

当本机没有A文件记录时跳到上一级查找,.org也没有所以查询失败,你本机维护着.org。

```bash
[root@server10 named]# dig www.baidu.com

; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26136
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 13, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.			IN	A

;; ANSWER SECTION:
www.baidu.com.		344	IN	CNAME	www.a.shifen.com.
www.a.shifen.com.	154	IN	A	36.152.44.95
www.a.shifen.com.	154	IN	A	36.152.44.96
;; AUTHORITY SECTION:
.			697	IN	NS	g.root-servers.net.
.			697	IN	NS	l.root-servers.net.

;; Query time: 60 msec
;; SERVER: 172.25.254.100#53(172.25.254.100)
;; WHEN: Sat Jun 05 06:51:09 CST 2021
;; MSG SIZE  rcvd: 312


当查询不是本机的维护的域时, .com不是本机维护的,它就会跳到它的上一级, .com里面查找。

五、权威dns中的数据记录种类及应用

对公司内部主机自己解析,搭建自己的dns,dns的正向解析,不去问别人,用自己的数据
对/etc/named.conf(主配置文件)进行编辑

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

dnssec-validation no; 要关掉,因为你没有备案,安全检测浪费时间。

include :主配置文件里面包含了一个文件
在这里插入图片描述

不包含这样写
)

在这里插入图片描述
zone 后面维护的域名
type master 主dns
file 记录在westos.org.zone 这个文件在电脑没有,自己手工建立

由于维护的域名在生产环境中有很多个,这样会让你的主配置文件变得很长,在排错或者阅读麻烦

所以,我们把zone语句块都独立到子配置文件里面

include "/etc/named.rfc1912.zones";

所以我们的zone 一般写在子配置文件里面

编辑子配置文件(主要写我们维护的域zone)

这个zone是已知的,企业中别人叫你写什么,你写什么

zone "westos.org" IN {
                type master;
               file "westos.org.zone";
               allow-update {none;};
};

"westos.org" 要维护的域名
master  dns为主dns 权威dns
westos.org.zone A 记录解析文件,这个文件没有,需要我们自己建立

## A记录解析文件存放的目录,生成A记录文件

```bash
[root@server10 ~]# cd /var/named/
[root@server10 named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves

named.localhost 这个是我们A记录解析文件模板
在这里插入图片描述
由于这些文件的属性有特殊属性
所以复制时要加-p,复制时也复制文件的权限

[root@server10 named]# cp -p named.localhost westos.org.zone
[root@server10 named]# vim westos.org.zone 

在这里插入图片描述
TTL time to life 1D表示缓存最长时间为1天,你来问网址解析,dns读这个A记录文件,你再来问网址解析,dns不读这个文件,直接把缓存信息给你
当解析变了,要重启服务,重启服务后,缓存会删掉(刷新),你在来问时,会在读一次这个文件
因为缓存速度比阅读文件速度快

@的值等于你在子配置文件zone后面引号的里面的内容,你A记录解析文件是为子配置文件服务的。
在这里插入图片描述
@的值 westos.org
在这个文件中,所有不用以.结尾的字符串都会自动补齐@的值
在这里插入图片描述test的真实值为test.westos.org

SOA授权机制,客户在解析遇到的问题,授权机制会显示出来,公司会给定这个信息的
在这里插入图片描述
当解析出现问题时,你对这个解析有疑问,你访问这个网址
在这里插入图片描述
serial 刷新标识
refresh 辅助dns重新刷新的时间
retry 刷新时,需要重新到dns取数据,失败了,再次取数据1h
expire 取的时候,连续不成功,1周后宣布dns停止工作
minimum 最小时间,连续刷新时间最小3h

在这里插入图片描述
NS name server 域名服务器的名称
A A记录一个A ipv4
AAAA ipv6
在这里插入图片描述
后面要加.要不然自动补齐成 dns.westos.org.westos.org

在这里插入图片描述
dns 因为 **dns.**wetos.org.
第一个要对NS主机进行解析
在这里插入图片描述
www 解析111,111主机有跟dns无关,你访问不了,那是111的的问题,这里面所有的A记录都是公司制定的,要是访问不了,跟dns配置无关,需要找111
dns只负责解析,解析能否访问与dns无关,111跟公司的定制单有关。

最后书写形式

$TTL 1D
@       IN SOA  dns.westos.org. root.westos.org.I (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.org.
dns     A       172.25.254.100
www     A       172.25.254.111

重启有问题,证明你的配置错了

[root@server10 named]# systemctl restart named
Job for named.service failed because the control process exited with error code. See "systemctl status named.service" and "journalctl -xe" for details.
[root@server10 named]# > /var/log/messages
[root@server10 named]# systemctl restart named
Job for named.service failed because the control process exited with error code. See "systemctl status named.service" and "journalctl -xe" for details.
[root@server10 named]# journalctl -xe
Jun 05 06:29:50 server10 bash[3648]: /etc/named.rfc1912.zones:42: open: /etc/named.rfc1912.zones: too many open files

Jun 05 06:32:33 server10 bash[3691]: /etc/named.rfc1912.zones:43: unknown option '43'
Jun 05 06:32:33 server10 bash[3691]: /etc/named.rfc1912.zones:44: unknown option '44'
Jun 05 06:32:33 server10 bash[3691]: /etc/named.rfc1912.zones:46: unexpected token near '}'

所以要修改我们的子配置文件
也可以这样看

[root@server10 named]# > /var/log/messages
[root@server10 named]# systemctl restart named
[root@server10 named]# cat /var/log/messages

开始解析

[root@server11 ~]# dig www.westos.org


在这里插入图片描述www.westos.org 地址解析是172.25.254.111
域名服务器 dns.westos.org
dns.westos.org 的域名ip 172.25.254.100
状态NOERROR

[root@server11 ~]# dig hello.westos.org
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 60207
SOA	dns.westos.org. root.westos.org.I.westos.org.

hello 当前主机没有,A记录没有,就去外网找了,就跳到它的上一级,.org里面去找了
找不到,全世界没有
SOA dns.westos.org. root.westos.org.I.westos.org.为这个说法负责全世界没有

[root@server10 named]# dig linux.westos.org

; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> linux.westos.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 42145
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;linux.westos.org. IN A

;; AUTHORITY SECTION:
westos.org. 10800 IN SOA dns.westos.org. root.westos.org.I.westos.org. 0 86400 3600 604800 10800

;; Query time: 0 msec
;; SERVER: 172.25.254.100#53(172.25.254.100)
;; WHEN: Sat Jun 05 06:48:28 CST 2021
;; MSG SIZE rcvd: 103

当本机没有A文件记录时跳到上一级查找,.org也没有所以查询失败,你本机维护着.org。

```bash
[root@server10 named]# dig www.baidu.com

; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26136
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 13, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.			IN	A

;; ANSWER SECTION:
www.baidu.com.		344	IN	CNAME	www.a.shifen.com.
www.a.shifen.com.	154	IN	A	36.152.44.95
www.a.shifen.com.	154	IN	A	36.152.44.96
;; AUTHORITY SECTION:
.			697	IN	NS	g.root-servers.net.
.			697	IN	NS	l.root-servers.net.

;; Query time: 60 msec
;; SERVER: 172.25.254.100#53(172.25.254.100)
;; WHEN: Sat Jun 05 06:51:09 CST 2021
;; MSG SIZE  rcvd: 312


当查询不是本机的维护的域时, .com不是本机维护的,它就会跳到它的上一级, .com里面查找。

六、权威dns的双向解析

问题点:
外网172.25.138
内网172.25.254
我们需要内网人做解析是内网地址 ,外网人做解析是外网地址
而实际

[root@server12 ~]# dig www.westos.org
;; ANSWER SECTION:
www.westos.org.		86400	IN	CNAME	bbs.westos.org.
bbs.westos.org.		86400	IN	A	172.25.138.222
bbs.westos.org.		86400	IN	A	172.25.138.111

内网人找的是外网地址
它解析到外网地址主要是它读了权威dns,权威dns看的是

[root@server10 named]# cd /var/named/
[root@server10 named]# ls
172.25.254.ptr  data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves  westos.org.zone
[root@server10 named]# 权威dns看的westos.org.zone 

搭建权威dns双向解析的过程

首先写一个A记录文件,然后写子配置文件,最后写主配置文件

[root@server10 named]# cp -p westos.org.zone westos.org.inter
[root@server10 named]# vim westos.org.inter 

在这里插入图片描述
所以现在有2套文件,一个是westos.org.zone 一个是westos.org.inter
这个westos.org.inter与dns还无关

[root@server10 named]# cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.inter
如果没加-p
[root@server10 named]# ls -ld /etc/named.rfc1912.zones.inter 
-rw-r----- 1 root root 1214 Jun  5 18:04 /etc/named.rfc1912.zones.inter
[root@server10 named]# chgrp named /etc/named.rfc1912.zones.inter 

[root@server10 named]# vim /etc/named.rfc1912.zones.inter

在这里插入图片描述
修改这个文件,子配置文件

修改主配置文件

[root@server10 named]# vim /etc/named.conf 

在这里插入图片描述
先注释掉,自己写一个
书写方法

[root@server10 named]# man 5 named.conf

在这里插入图片描述

内网访问zones.inter
外网(除了内网网段其它网段)都访问zones

[root@server10 named]# cat /etc/resolv.conf

nameserver 172.25.138.10
[root@server10 named]# dig www.westos.org
;; ANSWER SECTION:
www.westos.org.		86400	IN	CNAME	bbs.westos.org.
bbs.westos.org.		86400	IN	A	172.25.138.222
bbs.westos.org.		86400	IN	A	172.25.138.111


[root@server12 ~]# cat /etc/resolv.conf

nameserver 172.25.254.100
;; ANSWER SECTION:
www.westos.org.		86400	IN	CNAME	bbs.westos.org.
bbs.westos.org.		86400	IN	A	172.25.254.222
bbs.westos.org.		86400	IN	A	172.25.254.111


七、辅助DNS集群

解决问题

dns访问的人特别多,这个dns可能因为访问的人过多而down掉,所以要做dns集群

把dns双向解析的语句块注释掉,之前做过就注释掉,没有做过dns双向解析可以不用注释,因为没有写过这个语句块
在这里插入图片描述双向解析可以和辅助dns集群一块做

辅助dns的搭建

搭建环境:server10 有dns 给server12 装dns服务
dns服务软件包:bind
server10 172.25.138.10 server12 172.25.138.12
12修改主配置文件

[root@server12 ~]# vim /etc/named.conf 

在这里插入图片描述
在这里插入图片描述

[root@server12 ~]# vim /etc/named.rfc1912.zones 

写维护的域

在这里插入图片描述
这个文件会从主dns master 去获取
slaves 在/var/named/(辅助的)里面的目录名称,named 是可以写slaves的,named会把文件下载下来放在slaves里(辅助的)
在这里插入图片描述

masters可以写多个
在这里插入图片描述

[root@server12 ~]# systemctl restart named

在这里插入图片描述然后/var/named/slaves里面就多出westos.org.zone
这是个数据你看不了,防止dns的数据被剽窃

测试这个辅助dns服务起来没

[root@server10 named]# vim /etc/resolv.conf
[root@server10 named]# cat /etc/resolv.conf

nameserver 172.25.138.12
[root@server10 named]# dig www.westos.org
;; SERVER: 172.25.138.12#53(172.25.138.12)

起来了

八、辅助dns集群数据不同步问题解决方案

更新域以后数据不同步

环境:主dns server10 辅助dns server12

[root@server10 named]# vim westos.org.zone 

在这里插入图片描述
原本111改称122

[root@server12 slaves]# cat /etc/resolv.conf

nameserver 172.25.254.100
[root@server12 slaves]# dig www.westos.org
bbs.westos.org.		86400	IN	A	172.25.138.122
bbs.westos.org.		86400	IN	A	172.25.138.222

主dns的已经修改了

[root@server10 named]# dig www.westos.org
bbs.westos.org.		86400	IN	A	172.25.138.111
bbs.westos.org.		86400	IN	A	172.25.138.222
;; SERVER: 172.25.138.12#53(172.25.138.12)

辅dns没有修改

解决方法

手工方式

[root@server12 slaves]# cd /var/named/slaves/
[root@server12 slaves]# ls
westos.org.zone
[root@server12 slaves]# rm -fr *
[root@server12 slaves]# ls
[root@server12 slaves]# systemctl restart named
[root@server12 slaves]# ls
westos.org.zone
[root@server10 slaves]# dig www.westos.org
;; ANSWER SECTION:
www.westos.org.		86400	IN	CNAME	bbs.westos.org.
bbs.westos.org.		86400	IN	A	172.25.138.122
bbs.westos.org.		86400	IN	A	172.25.138.222

A记录中相关辅助dns参数
refresh #刷新时间(辅助dns) 不去手工删掉,每隔1D它也会更新

自动化同步数据

[root@server10 named]# vim /etc/named.rfc1912.zones

在这里插入图片描述
给维护的域,添加also-notify { 172.25.138.12 ;};
当主dns更新后通知辅助dns它要更新

root@server10 named]# man 5 named.conf | grep also-
                also-notify [ port integer ] { ( ipv4_address | ipv6_address )
                also-notify [ port integer ] { ( ipv4_address | ipv6_address )
                also-notify [ port integer ] { ( ipv4_address | ipv6_address )

详情用法

也可以不过滤,在man 5 查看 man 5 named.conf

测试自动化同步数据dns

[root@server10 named]# vim westos.org.zone 
[root@server10 named]# cat westos.org.zone 
bbs        A         172.25.138.111 原本为112
bbs        A         172.25.138.222
[root@server10 named]# systemctl restart named

[root@server10 named]# cat /etc/resolv.conf

nameserver 172.25.138.12
[root@server10 named]# dig www.westos.org
;; ANSWER SECTION:
www.westos.org.		86400	IN	CNAME	bbs.westos.org.
bbs.westos.org.		86400	IN	A	172.25.138.222
bbs.westos.org.		86400	IN	A	172.25.138.122

没改变
测试失败

测试失败原因

变化以及没变化,在企业中A记录会记录上百万个,网址非常庞大,对比修改一个就更新不容易,所以在版本号修改数字,单调递增,无论内容是否改变,只要版本号发生改变,就会更新

测试自动化

[root@server10 named]# vim westos.org.zone 
[root@server10 named]# cat westos.org.zone 
bbs        A         172.25.138.111 原本为112
bbs        A         172.25.138.222
[root@server10 named]# systemctl restart named

再修改

在这里插入图片描述

在这里插入图片描述

一旦你修改A记录时,你就改变一下版本号,才能实现同步

[root@server10 named]# systemctl restart named

[root@server10 named]# dig www.westos.org
www.westos.org.		86400	IN	CNAME	bbs.westos.org.
bbs.westos.org.		86400	IN	A	172.25.138.111
bbs.westos.org.		86400	IN	A	172.25.138.222
;; SERVER: 172.25.138.12#53(172.25.138.12)
测试成功

按照以上做法不行的话,估计是server10火墙没关,因为主master要给10发送信息,但火墙阻止了

九、A记录中辅助dns的相关参数

[root@server10 named]# vim westos.org.zone 
$TTL 1D    #TIME-TO-LIVE(dns地址保存时间长度)
@       IN SOA  dns.westos.org. root.westos.org.I ( #SOA授权起始)
                                       0       ; serial  #域名版本更新序列号
                                       1D      ; refresh #刷新时间(辅助dns)
                                       1H      ; retry   #重试时间(辅助dns)
                                       1W      ; expire  #过期时间(辅助dns,查询失败过期停止对辅助域名的应答)
                                       3H )    ; minimum  #A记录最短有效期

1H ; retry #重试时间(辅助dns) 当刷新时连接不上主dns重新尝试连接的时间
1W ; expire #过期时间(辅助dns,查询失败过期停止对辅助域名的应答)尝试一周后,说与dns断开连接了,以后不提供解析服务了
3H ) ; minimum #A记录最短有效期 最短3H同步一次

十、A记录中dns版本号

由于是必须增量修改,可改数字10位
所以最好这样改
在这里插入图片描述
表示2021年06月05号01第一次修改
版本号只要数字变化,增量变大,这个消息就会自动同步到辅助dns里面。
内容变了,数字没变,就不会同步到辅助dns里面。

[root@server10 named]# vim westos.org.zone 
$TTL 1D
@	IN SOA	dns.westos.org. root.westos.org.I (
				2021060502	; serial
[root@server10 named]# systemctl restart named
[root@server12 slaves]# ls -l /var/named/slaves/westos.org.zone 
-rw-r--r-- 1 named named 414 Jun  5 22:05 /var/named/slaves/westos.org.zone
[root@server12 slaves]# ls -l /var/named/slaves/westos.org.zone 
-rw-r--r-- 1 named named 414 Jun  5 22:20 /var/named/slaves/westos.org.zone

更改了版本号,数据就同步了,然后这个文件内容便发生更改了

END
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1390579.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序canvas画布图片保存到相册官方授权、自定义授权、保存

关键步骤介绍 wx.getSetting可以获取授权信息。 wx.authorize首次授权时会打开弹框让用户授权&#xff0c;若用户已选择同意或拒绝&#xff0c;后续不会再显示授权弹框。 如果授权信息显示未进行相册授权&#xff0c;则打开自定义弹框&#xff08;show_auth: true&#xff0…

自定义C#类库(.dll文件)

环境配置 操作系统&#xff1a;Windows 10 开发工具&#xff1a;Visual Studio 2022 .Net桌面开发环境&#xff1a; 开发步骤 &#xff08;一&#xff09;创建C#类库项目 &#xff08;二&#xff09;配置项目名称和项目路径 &#xff08;三&#xff09;选择所使用的框架&a…

群晖NAS上安装部署开源工作流自动化工具n8n

一、开源工作流自动化工具n8n简介 n8n是它是一个与其他应用集成的应用程序&#xff0c;目标是自动化各应用之间的流程;利用 n8n 你可以方便地实现当 A 条件发生&#xff0c;触发 B 服务这样的自动工作流程。 n8n优点是&#xff1a;代码开源、可以自托管、下载安装方便、易于使用…

快速入门Java NIO(Not I/O)的网络通信框架--Netty

Netty 入门 了解netty前需要对nio有一定认识,该笔记基础来自bilinbili黑马,在此基础上自己学习的笔记,添加了一些自己的理解 了解java 非阻塞io编程 1. 概述 1.1 Netty 是什么&#xff1f; Netty is an asynchronous event-driven network application framework for rapid …

PLC绝对定位指令DDRVA往复运动(三菱FX系列简单状态机编程)

有关状态机的具体介绍,专栏有很多文章,大家可以通过下面的链接查看: https://rxxw-control.blog.csdn.net/article/details/125488089https://rxxw-control.blog.csdn.net/article/details/125488089三菱FX系列回原功能块介绍 https://rxxw-control.blog.csdn.net/article…

2024年【上海市安全员B证】模拟考试及上海市安全员B证复审模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 上海市安全员B证模拟考试是安全生产模拟考试一点通生成的&#xff0c;上海市安全员B证证模拟考试题库是根据上海市安全员B证最新版教材汇编出上海市安全员B证仿真模拟考试。2024年【上海市安全员B证】模拟考试及上海市…

网络安全(网络安全)—2024自学

1.网络安全是什么 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高&#xff1b; 二、则是发展相对成熟…

TCP 的三次握手和四次挥手

Java 面试题 TCP 三次握手 第一次握手&#xff1a;客户端向服务端发送SYN包。报文中标志位SYN1&#xff0c;序列号seqx&#xff08;x为随机整数&#xff09;。此时客户端进入了 SYN_SEND 同步已发送状态。 第二次握手&#xff1a;服务端回复客户端SYNACK包。报文中标志位SYN1&…

Mantle: A Programmable Metadata Load Balancer for the Ceph File System——论文泛读

SC 2015 Paper 元数据论文阅读汇总 问题 优化Ceph的元数据局部性和负载平衡。 现有方法 提高元数据服务性能的最常见技术是在专用的元数据服务器&#xff08;MDS&#xff09;节点之间平衡负载 [16, 25, 26, 21, 28]。常见的方法是鼓励独立增长并减少通信&#xff0c;使用诸…

burp靶场——XXE注入

XML 外部实体 (XXE) 注入 1. 什么是xxe漏洞&#xff1a; https://portswigger.net/web-security/xxe#what-is-xml-external-entity-injection XML 外部实体注入&#xff08;也称为 XXE&#xff09;是一种 Web 安全漏洞&#xff0c;允许攻击者干扰应用程序对 XML 数据的处理。…

无监督去噪的一个变迁(1)——N2N→N2V→HQ-SSL

目录 1. 前沿2. N2N3. N2V——盲点网络&#xff08;BSNs&#xff0c;Blind Spot Networks&#xff09;开创者3.1. N2V实际是如何训练的&#xff1f; 4. HQ-SSL——认为N2V效率不够高4.1. HQ-SSL的理论架构4.1.1. 对卷积的改进4.1.2. 对下采样的改进4.1.3. 比N2V好在哪&#xff…

【Linux】权限详解

权限是什么呢&#xff1f; 通过一定条件&#xff0c;拦住一部分人&#xff0c;给另一部分人权利来访问某种资源 权限的本质&#xff1a; 权限与人有关&#xff1a;比如你要进你的学校是要看你是个人吗&#xff0c;重要的是看的是你是不是学校内学生&#xff0c;即你的角色 当然…

力扣精选算法100题——等于目标值的两个数or三数之和(双指针专题)

目录 &#x1f6a9;等于目标值的俩个数 第一步&#xff1a;了解题意 第二步&#xff1a;算法原理 第三步&#xff1a;代码实现 &#x1f6a9;三数之和 第一步&#xff1a;了解题意 第二步&#xff1a;算法原理 思路&#xff1a; ❗不漏&#xff1a; ❗去重: &#xf…

Midjourney Prompt基本结构

在 Midjourney 的官方介绍文档里&#xff0c;介绍了最简单的 Prompt 结构是这样的&#xff1a; 但我觉得上面那个 Prompt 过于简单了 &#x1f602; &#xff0c;反而 Advanced Prompt 更适合学习&#xff1a; Image Prompts&#xff08;选填&#xff09; Prompt 分成三个部分…

Spring Boot框架中Controller层API接口如何支持使用多个@RequestBody注解接受请求体参数

一、前言 众所周知&#xff0c;在Spring Boot框架中&#xff0c;Controller层API接口编码获取请求体参数时&#xff0c;在参数上会使用RequestBody注解&#xff1b;如果一次请求中&#xff0c;请求体参数携带的内容需要用多个参数接收时&#xff0c;能不能多次使用RequestBody…

游戏开发丨基于PyGlet的简易版Minecraft我的世界游戏

文章目录 写在前面我的世界PyGlet简介实验内容游戏按键程序设计引入文件 运行结果写在后面 写在前面 本期内容&#xff1a;基于PyGlet的简易版Minecraft我的世界游戏 实验环境&#xff1a; pycharmpyglet 项目下载地址&#xff1a;https://download.csdn.net/download/m0_6…

【CFP-专栏3】多领域SCI/EI快刊,1个月录用,12天见刊,1个月检索!

一、材料科学类SCI 【期刊概况】IF:3.0-4.0, JCR3区&#xff0c;中科院4区&#xff1b; 【大类学科】材料科学&#xff1b; 【检索情况】SCI在检&#xff1b; 【录用周期】2-3个月左右录用&#xff1b; 【接收领域】低温环境下新型生物降解材料的开发相关研究均可&#xf…

构建未来教育:在线培训系统开发的技术探讨

随着远程学习的崛起和数字化教育的普及&#xff0c;在线培训系统的开发成为了现代教育的核心。本文将深入讨论在线培训系统的关键技术要点&#xff0c;涵盖前后端开发、数据库管理、以及安全性和身份验证等关键方面。 前端开发&#xff1a;提供交互性与用户友好体验 在构建在…

力扣算法之滑动窗口题目--水果成篮

文章目录 题目解析不同之处解决办法解决图示 代码 题目解析 首先我们先看一下题目如下图所示 题目意思也比较容易理解其实就是你有一个篮子这个篮子只能装两个不同种类的水果&#xff0c;问你最多能装多少个水果&#xff0c;这里还贴心的弄了一个样列&#xff0c;121 可以看出…

C盘满了,我用什么思路清理?

20240115 上周六同事传了一个很大的虚拟机给我&#xff0c;C盘就红了 虽然是飞秋选错了存储文件的路径&#xff0c;但后来忘了&#xff0c;就开始毫无目的删除文件&#xff0c;过程中会有没有权限删除的&#xff0c;这样还是没有改善。 咨询了公司IT技术人员&#xff0c; 告…