第十二章 使用Bind提供域名解析服务

news2024/11/27 13:33:36

文章目录

    • 第十二章 使用Bind提供域名解析服务
        • 一、DNS域名解析服务
          • 1、DNS简介
          • 2、服务器类型
          • 3、13台根DNS服务器的具体信息
        • 二、安装Bind服务程序
          • 1、Bind简介
          • 2、Bind安装
          • 3、关键配置文件
          • 4、修改主配置文件
          • 5、正向解析实验
            • (1)、编辑区域配置文件
            • (2)、编辑数据配置文件
            • (3)、域名解析记录类型
            • (4)、检验解析结果
          • 6、反向解析实验
            • (1)、编辑区域配置文件
            • (2)、编辑数据配置文件
            • (3)、检验解析结果
        • 三、部署从服务器
          • 1、编辑区域配置文件
          • 2、配置防火墙
          • 3、从服务器上安装bind-chroot并配置文件
          • 4、编辑区域文件
          • 5、检验解析结果
        • 四、安全的加密传输
          • 1、删除从服务器中slaves文件夹下所有文件
          • 2、在主服务器中生成密钥
            • (1)、dnssec-keygen命令
            • (2)、dnssec-keygen命令的常用参数
            • (3)、生成密钥
          • 3、在创建密钥验证文件
          • 4、编辑主服务器的主配置文件
          • 5、清空同步的数据配置文件
          • 6、配置从服务器
          • 7、开机并加载从服务器的密钥验证功能
          • 8、检验解析结果
        • 五、部署缓存服务器
          • 1、缓存服务器简介
          • 2、配置系统双网卡
          • 3、编辑主配置文件
          • 4、配置防火墙
          • 5、设置客户端主机的DNS服务器地址
          • 6、检验解析结果
        • 六、分离解析技术
          • 1、设备环境
          • 2、拓扑图
          • 3、编辑主配置文件
          • 4、编辑区域配置文件
          • 5、编辑数据配置文件
          • 6、检验解析结果

第十二章 使用Bind提供域名解析服务

一、DNS域名解析服务

1、DNS简介

为了降低用户访问网络资源的门槛,DNS(Domain Name System)域名系统技术应运而生。这是一项用于管理和解析域名与IP地址对应关系的技术,简单来说,就是能够接受用户输入的域名或IP地址,然后自动查找与之匹配(或者说具有映射关系)的IP地址或域名,即将域名解析为IP地址(正向解析),或将IP地址解析为域名(反向解析)。这样一来,只需要在浏览器中输入域名就能打开想要访问的网站了。DNS域名解析技术的正向解析也是最常使用的一种工作模式。

DNS域名解析服务采用分布式的数据结构来存放海量的“区域数据”信息,在执行用户发起的域名查询请求时,具有递归查询和迭代查询两种方式。所谓递归查询,是指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果DNS服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结果提交给用户。而迭代查询则是指,DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台DNS服务器的地址,用户再向这台DNS服务器提交请求,这样依次反复,直到返回查询结果。

2、服务器类型

主服务器:在特定区域内具有唯一性,负责维护该区域内的域名与IP地址之间的对应关系。

从服务器:从主服务器中获得域名与IP地址的对应关系并进行维护,以防止主服务器宕机等清况。

缓存服务器:通过向其他域名解析服务器查询获得域名与IP地址的对应关系,并将经常查询的域名信息保存到服务器本地,以此来提高重复查询时的效率。

3、13台根DNS服务器的具体信息

13台根域服务器并非真的是指只有13台服务器,没有那台服务器能独立承受住如此大的请求量。实际上用于根域名的服务器总共有504台,它们从A到M进行了排序,共用13个IP地址以此进行负载均衡,抵抗分布式拒绝服务攻击(DDoS)的影响。

名称管理单位地理位置IP地址
AINTERNIC.NET美国-弗吉尼亚州198.41.0.4
B美国信息科学研究所美国-加利福尼亚州128.9.0.107
CPSINet公司美国-弗吉尼亚州192.33.4.12
D马里兰大学美国-马里兰州128.8.10.90
E美国航空航天管理局美国-加利福尼亚州192.203.230.10
F因特网软件联盟美国-加利福尼亚州192.5.5.241
G美国国防部网络信息中心美国-弗吉尼亚州192.112.36.4
H美国陆军研究所美国-马里兰州128.63.0.53
IAutonomica公司瑞典-斯德哥尔摩192.36.148.17
JVeriSign公司美国-弗吉尼亚州192.58.128.30
KRIPE NCC英国-伦敦193.0.14.129
LIANA美国-弗吉尼亚州199.7.83.42
MWIDE Project日本-东京202.12.27.33

二、安装Bind服务程序

1、Bind简介

BIND (Berkeley Internet Name Domain,伯克利因特网名称域)服务是全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。DNS域名解析服务作为互联网基础设施服务,其责任之重可想而知,因此建议大家在生产环境中安装部署bind服务程序时加上chroot(俗称牢笼机制)扩展包,以便有效地限制bind服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全。

2、Bind安装
[root@centos ~]# yum install bind-chroot
CentOS-8.5.2111 - Base - mirrors.ali  31 kB/s | 3.9 kB     00:00    
CentOS-8.5.2111 - Extras - mirrors.a 8.8 kB/s | 1.5 kB     00:00    
CentOS-8.5.2111 - AppStream - mirror  45 kB/s | 4.3 kB     00:00    
依赖关系解决。
=====================================================================
 软件包          架构       版本                 仓库           大小
=====================================================================
安装:
 bind-chroot     x86_64     32:9.11.26-6.el8     AppStream     104 k
安装依赖关系:
 bind            x86_64     32:9.11.26-6.el8     AppStream     2.1 M

事务概要
=====================================================================
安装  2 软件包

总下载:2.2 M
安装大小:4.5 M
确定吗?[y/N]: y
下载软件包:
(1/2): bind-chroot-9.11.26-6.el8.x86 249 kB/s | 104 kB     00:00    
(2/2): bind-9.11.26-6.el8.x86_64.rpm 2.3 MB/s | 2.1 MB     00:00    
---------------------------------------------------------------------
总计                                 2.4 MB/s | 2.2 MB     00:00     
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中  :                                                      1/1 
  运行脚本: bind-32:9.11.26-6.el8.x86_64                         1/2 
  安装    : bind-32:9.11.26-6.el8.x86_64                         1/2 
  运行脚本: bind-32:9.11.26-6.el8.x86_64                         1/2 
  安装    : bind-chroot-32:9.11.26-6.el8.x86_64                  2/2 
  运行脚本: bind-chroot-32:9.11.26-6.el8.x86_64                  2/2 
  验证    : bind-32:9.11.26-6.el8.x86_64                         1/2 
  验证    : bind-chroot-32:9.11.26-6.el8.x86_64                  2/2 

已安装:
  bind-32:9.11.26-6.el8.x86_64  bind-chroot-32:9.11.26-6.el8.x86_64 

完毕!
3、关键配置文件

主配置文件(/etc/named.conf):只有59行,而且在去除注释信息信息和空行之后,实际有效的参数仅有30行左右,这些参数用来定义bind服务程序的运行。

区域配置文件(/etc/named.rfc1912.zones):用来保存域名和IP地址对应关系的所在位置。类似于图书的目录,对应着每个域和相应IP地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。

数据配置文件目录(/var/named):该目录用来保存域名和IP地址真是对应关系的数据配置文件。

4、修改主配置文件
//复制为备份文件
[root@centos ~]# cp /etc/named.conf /etc/named.conf.bak
//删除注释重定向源文件
[root@centos ~]# grep -v "//" /etc/named.conf.bak > /etc/named.conf
//将127.0.0.1和localhost改为any
[root@centos ~]# vim /etc/named.conf     
  1 options {
  2         listen-on port 53 { any; };
  3         listen-on-v6 port 53 { ::1; };
  4         directory       "/var/named";
  5         dump-file       "/var/named/data/cache_dump.db";
  6         statistics-file "/var/named/data/named_stats.txt";
  7         memstatistics-file "/var/named/data/named_mem_stats.txt";
  8         secroots-file   "/var/named/data/named.secroots";
  9         recursing-file  "/var/named/data/named.recursing";
 10         allow-query     { any; };
5、正向解析实验
(1)、编辑区域配置文件
//可以将文件中原有信息全部删除也可以在配置文件底下添加
//复制为备份文件
[root@centos ~]# cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak
//删除源文件
[root@centos ~]# rm -rf /etc/named.rfc1912.zones
//创建并编辑新的区域配置文件
[root@centos ~]# vim /etc/named.rfc1912.zones
zone "aaa.com" IN {
        type master;
        file "aaa.com.zone";
        allow-update {none;};
};
(2)、编辑数据配置文件
//复制正向解析的模板文件并重命名
[root@centos ~]# cp -a /var/named/named.localhost /var/named/aaa.com.zone
//编辑数据配置文件
[root@centos ~]# vim /var/named/aaa.com.zone 
$TTL 1D		//生成周期为1天
@	IN SOA				aaa.com.				root.aaa.com. (
    //授权信息开始		//DNS区域的地址		 //域名管理员的邮箱(不要用@符号)
					0	; serial			//更新序列号
					1D	; refresh			//更新时间
					1H	; retry				//重试延时
					1W	; expire			//失效时间
					3H )	; minimum		//无效解析记录的缓存时间
	NS	ns.aaa.com.							//域名服务器记录
ns	IN A	192.168.10.10					//地址记录(ns.aaa.com)
www	IN A	192.168.10.10					//地址记录(www.aaa.com)
//重启服务并设置开机自启动
[root@centos ~]# systemctl start named && systemctl enable named
(3)、域名解析记录类型
记录类型作用
A将域名指向一个IPv4地址
CNAME将域名指向另一个域名
AAAA将域名指向一个IPv6地址
NS将子域名指向其他DNS服务器解析
MX将域名指向邮件服务器地址
SRV记录提供特定的服务的服务器
TXT文本内容一般为512字节,常作为反垃圾邮件的SPF记录
CAACA证书颁发机构授权校验
显性URL将域名重定向到另一个地址
隐性URL与显性URL类型,但是会隐藏真实目标地址
(4)、检验解析结果
//DNS地址改为本机IP地址
[root@centos ~]# nmtui

在这里插入图片描述

//重连网卡
[root@centos ~]# nmcli connection up ens160 
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/5//检验解析结果
[root@centos ~]# nslookup www.aaa.com
Server:		192.168.10.10
Address:	192.168.100.10#53

Name:	www.aaa.com
Address: 192.168.10.10

[root@centos ~]# nslookup ns.aaa.com
Server:		192.168.10.10
Address:	192.168.10.10#53

Name:	ns.aaa.com
Address: 192.168.10.10
6、反向解析实验
(1)、编辑区域配置文件
[root@centos ~]# vim /etc/named.rfc1912.zones
zone "10.168.192.in-addr.apra" IN {
        type master;
        file "192.168.10.arpa";
        allow-update {none;};
};
(2)、编辑数据配置文件
//复制一份反向解析模板文件
[root@centos ~]# cp -a /var/named/named.loopback /var/named/192.168.10.arpa
//编辑数据配置文件
[root@centos ~]# vim /var/named/192.168.10.arpa 
$TTL 1D
@	IN SOA	aaa.com.	root.aaa.com. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	ns.aaa.com.
ns	A	192.168.10.10
10	PTR	ns.aaa.com.		//PTR为指针记录,仅用于反向解析中。
10	PTR	www.aaa.com.
//重启服务
[root@centos ~]# systemctl restart named
(3)、检验解析结果
[root@centos ~]# nslookup 192.168.10.10
10.10.168.192.in-addr.arpa	name = www.aaa.com

三、部署从服务器

1、编辑区域配置文件
//在主服务器的区域配置文件中允许该从服务器的更新请求
[root@centos ~]# vim /etc/named.rfc1912.zones
zone "aaa.com" IN {
	type master;
	file "aaa.com.zone";
	allow-update {192.168.10.20;};
};
zone "10.168.192.in-addr.apra" IN {
	type master;
	file "192.168.100.arpa";
	allow-update {192.168.10.20;};
};
//重启服务
[root@centos ~]# systemctl restart named
2、配置防火墙
[root@centos ~]# iptables -F
[root@centos ~]# firewall-cmd --zone=public --add-service=dns --permanent 
success
[root@centos ~]# firewall-cmd --reload 
success
3、从服务器上安装bind-chroot并配置文件
//安装bind-chroot
[root@centos ~]# yum install bind-chroot
//编辑文件
//将127.0.0.1和localhost改为any
[root@centos ~]# vim /etc/named.conf     
  1 options {
  2         listen-on port 53 { any; };
  3         listen-on-v6 port 53 { ::1; };
  4         directory       "/var/named";
  5         dump-file       "/var/named/data/cache_dump.db";
  6         statistics-file "/var/named/data/named_stats.txt";
  7         memstatistics-file "/var/named/data/named_mem_stats.txt";
  8         secroots-file   "/var/named/data/named.secroots";
  9         recursing-file  "/var/named/data/named.recursing";
 10         allow-query     { any; };
4、编辑区域文件
//在从服务器的区域配置文件中允许该从服务器的更新请求
[root@centos ~]# vim /etc/named.rfc1912.zones
        type slave;
        masters { 192.168.10.10; };
        file "slaves/aaa.com.zone";
};
zone "10.168.192.in-addr.arpa" IN {
        type slave;
        masters { 192.168.10.10; };
        file "slaves/192.168.10.arpa";
};
//重启服务
[root@centos ~]# systemctl restart named
5、检验解析结果
//DNS地址改为本机IP地址
[root@centos ~]# nmtui

在这里插入图片描述

//重连网卡
[root@centos ~]# nmcli connection up ens160 
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/5//检验解析结果
[root@centos ~]# nslookup www.aaa.com
Server:		192.168.10.20
Address:	192.168.10.20#53

Name:	www.aaa.com
Address: 192.168.10.10

[root@centos ~]# nslookup 192.168.10.10
10.10.168.192.in-addr.arpa	name = www.aaa.com

四、安全的加密传输

1、删除从服务器中slaves文件夹下所有文件
[root@centos ~]# rm -rf /var/named/slaves/*
2、在主服务器中生成密钥
(1)、dnssec-keygen命令

dnssec-keygen命令用于生成安全的DNS服务密钥。

命令格式:dnssec-keygen [参数]
(2)、dnssec-keygen命令的常用参数
参数作用
-a指定加密算法
-b密钥长度
-n密钥类型
(3)、生成密钥
//生成一个主机名称为master-slave的128位HMAC-MD5算法的密钥文件
[root@centos ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST master-slave
Kmaster-slave.+157+03622
//查看私钥文件
[root@centos ~]# cat Kmaster-slave.+157+03622.private 
Private-key-format: v1.3
Algorithm: 157 (HMAC_MD5)
Key: t3rFQFQ0T5EBDtMvK6/oGg==
Bits: AAA=
Created: 20230512043136
Publish: 20230512043136
Activate: 20230512043136
3、在创建密钥验证文件
//创建密钥验证文件
[root@centos ~]# vim /var/named/chroot/etc/transfer.key
key "master-slave" {
        algorithm hmac-md5;
        secret "t3rFQFQ0T5EBDtMvK6/oGg==";
};
//修改文件所属组
[root@centos ~]# chown root:named /var/named/chroot/etc/transfer.key
//修改文件权限
[root@centos ~]# chmod 640 /var/named/chroot/etc/transfer.key
//把该文件做一个硬链接到/etc目录
[root@centos ~]# ln /var/named/chroot/etc/transfer.key /etc/transfer.key
4、编辑主服务器的主配置文件
//编辑主配置文件
[root@centos ~]# vim /etc/named.conf     
include "/etc/transfer.key";
options {
        listen-on port 53 { any; };
        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";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { any; };
        allow-transfer { key master-slave; };
 //重启服务
 [root@centos ~]# systemctl restart named
5、清空同步的数据配置文件
//清空同步的数据配置文件
[root@centos ~]# rm -rf /var/named/slaves/*
//重启服务
[root@centos ~]# systemctl restart named
6、配置从服务器
//创建密钥验证文件
[root@centos ~]# vim /var/named/chroot/etc/transfer.key
key "master-slave" {
        algorithm hmac-md5;
        secret "t3rFQFQ0T5EBDtMvK6/oGg==";
};
//修改文件所属组
[root@centos ~]# chown root:named /var/named/chroot/etc/transfer.key
//修改文件权限
[root@centos ~]# chmod 640 /var/named/chroot/etc/transfer.key
//把该文件做一个硬链接到/etc目录
[root@centos ~]# ln /var/named/chroot/etc/transfer.key /etc/transfer.key
7、开机并加载从服务器的密钥验证功能
//编辑主配置文件
[root@centos ~]# vim /etc/named.conf 
//
// 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.
//
include "/etc/transfer.key";
options {
	listen-on port 53 { any; };
	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";
	secroots-file	"/var/named/data/named.secroots";
	recursing-file	"/var/named/data/named.recursing";
	allow-query     { any; };

	/* 
	 - 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 will
	   cause your server to become part of large scale DNS amplification 
	   attacks. Implementing BCP38 within your network would greatly
	   reduce such attack surface 
	*/
	recursion yes;

	dnssec-enable yes;
	dnssec-validation yes;

	managed-keys-directory "/var/named/dynamic";

	pid-file "/run/named/named.pid";
	session-keyfile "/run/named/session.key";

	/* https://fedoraproject.org/wiki/Changes/CryptoPolicy */
	include "/etc/crypto-policies/back-ends/bind.config";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
server 192.168.10.10 {
	keys { master-slave; };
};
zone "." IN {
	type hint;
	file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
//重启服务
[root@centos ~]# systemctl restart named
8、检验解析结果
//从服务器检验解析结果
[root@centos ~]# nslookup www.aaa.com
Server:		192.168.10.20
Address:	192.168.10.20#53

Name:	www.aaa.com
Address: 192.168.10.10

[root@centos ~]# nslookup 192.168.10.10
10.10.168.192.in-addr.arpa	name = www.aaa.com

五、部署缓存服务器

1、缓存服务器简介

DNS缓存服务器(Caching DNS Server)是一种不负责域名数据维护的DNS服务器。简单来说,缓存服务器就是把用户经常使用到的域名与IP地址的解析记录保存在主机本地,从而提升下次解析的效率。DNS缓存服务器一般用于经常访问某些固定站点而且对这些网站的访问速度有较高要求的企业内网中,但实际的应用并不广泛。而且,缓存服务器是否可以成功解析还与指定的上级DNS服务器的允许策略有关,因此当前仅需了解即可。

2、配置系统双网卡
主机名称操作系统IP地址
缓存服务器Centos网卡(外网):ens192—根据物理设备的网络参数进行配置
网卡(内网):ens160—192.168.10.10
客户端Centos192.168.10.20
3、编辑主配置文件
//客户端编辑著配置文件,添加缓存转发参数
[root@centos ~]# vim /etc/named.conf
options {
        listen-on port 53 { any; };
        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";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { any; };
        forwarders { 8.8.8.8; };
//重启服务
[root@centos ~]# systemctl restart named
4、配置防火墙
//如果系统是最初始状态
[root@centos ~]# iptables -F
[root@centos ~]# iptables-save 
[root@centos ~]# firewall-cmd --zone=public --add-service=dns --permanent 
success
[root@centos ~]# firewall-cmd --reload 
success
5、设置客户端主机的DNS服务器地址

在这里插入图片描述

//重启网卡
[root@centos ~]# nmcli connection up ens160 
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/4
6、检验解析结果
[root@centos ~]# nslookup www.linuxprobe.com
Server:		192.168.10.10
Address:	192.168.10.10#53

Non-authoritative answer:
Name:	www.linuxprobe.com
Address: 39.98.160.175

六、分离解析技术

1、设备环境
主机名称操作系统IP地址
DNS服务器Centos中国网络:122.71.115.10
美国网络:106.185.25.10
北京用户Windows10122.71.115.1
海外用户Windows10106.185.25.1
2、拓扑图

在这里插入图片描述

3、编辑主配置文件
//删除根域信息
zone "." IN {
        type hint;
        file "named.ca";
};
4、编辑区域配置文件
[root@centos ~]# vim /etc/named.rfc1912.zones 
acl "china" { 122.71.115.0/24; };
acl "USA"	{ 106.185.25.0/24; };
view "china"{
	match-clients { "china"; };
	zone "linuxprobe.com" {
	type master;
	file "linuxprobe.com.china";
	};
};
view "USA"{
	match-clients { "USA"; };
	zone "linuxprobe.com" {
	type master;
	file "linuxprobe.com.china";
	};
};
5、编辑数据配置文件
//复制正向解析的模板文件并重命名
[root@centos ~]# cp -a /var/named/named.localhost /var/named/china
[root@centos ~]# cp -a /var/named/named.localhost /var/named/USA
//编辑数据配置文件
[root@centos ~]# vim /var/named/china
$TTL 1D		
@	IN SOA				linuxprobe.com.		root.linuxprobe.com. (
    //授权信息开始		//DNS区域的地址		 //域名管理员的邮箱(不要用@符号)
					0	; serial			//更新序列号
					1D	; refresh			//更新时间
					1H	; retry				//重试延时
					1W	; expire			//失效时间
					3H )	; minimum		//无效解析记录的缓存时间
	NS	ns.linuxprobe.com.							//域名服务器记录
ns	IN A	122.71.115.10					//地址记录(ns.linuxprobe.com)
www	IN A	122.71.115.15					//地址记录(www.linuxprobe.com)
//编辑数据配置文件
[root@centos ~]# vim /var/named/USA
$TTL 1D		
@	IN SOA				linuxprobe.com.		root.linuxprobe.com. (
    //授权信息开始		//DNS区域的地址		 //域名管理员的邮箱(不要用@符号)
					0	; serial			//更新序列号
					1D	; refresh			//更新时间
					1H	; retry				//重试延时
					1W	; expire			//失效时间
					3H )	; minimum		//无效解析记录的缓存时间
	NS	ns.linuxprobe.com.							//域名服务器记录
ns	IN A	106.185.25.10					//地址记录(ns.linuxprobe.com)
www	IN A	106.185.25.15					//地址记录(www.linuxprobe.com)
//重启服务
[root@centos ~]# systemctl restart named
6、检验解析结果

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

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

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

相关文章

必须了解的内存屏障

目录 一,内存屏障1,概念2,内存屏障的效果3,cpu中的内存屏障 二,JVM中提供的四类内存屏障指令三,volatile 特性1,保证内存可见性定义2,禁止指令重排序3,不保证原子性 一&a…

Http与Https 比较

目录 1、HTTP(HyperText Transfer Protocol:超文本传输协议) 2、HTTPS(Hypertext Transfer Protocol Secure:超文本传输安全协议) 3、HTTP 与 HTTPS 区别 4、HTTPS 的工作原理 1、HTTP(HyperTex…

MySQL---存储过程(局部变量、用户变量、系统变量(全局变量、会话变量)、传参(in、out、inout))

1. 存储过程特性 存储过程就是数据库 SQL 语言层面的代码封装与重用。 有输入输出参数,可以声明变量,有if/else, case,while等控制语句,通过编写存储过程,可以实现 复杂的逻辑功能; 函数的普遍特性:模块…

全球特种无人机市场规模逐渐扩大,预计今年将突破120亿美元

翱翔于空中是人们长久的追求,1903年,莱特兄弟发明了第一家螺旋桨飞机,这次飞行标志着飞机时代的开始。科技发展到今天,无人机(英文简称为“UAV”)作为一种高科技产品已经逐渐走进人们的生活中。 无人机技术…

如何解决浏览器跨域问题?

浏览器判断是跨域请求会在请求头上添加origin,表示这个请求来源哪里。比如: Plaintext GET / HTTP/1.1 Origin: http://localhost:8601服务器收到请求判断这个Origin是否允许跨域,如果允许则在响应头中说明允许该来源的跨域请求,…

【windows批处理batch】批处理batch字符串处理相关操作(字符串定义、分割、拼接、替换、切片、查找)

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、…

从万和电气看民企如何获得“新增长”

改革开放至今,中国民营企业在经过蒙眼狂奔的三十多年后,普遍迎来发展难题: 1,第一代创业者普遍进入退休年龄,面临代际传承问题; 2,民营企业尤其是偏传统行业的企业,如何在新的行业…

基于SSM的高校图书借阅管理系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

mybatis-plus基本使用流程以及进阶操作

参考 https://www.bilibili.com/video/BV1dQ4y1A75e?p7&vd_source6346698154746eb5026e16499e253fe8 使用流程 一、 准备工作 3.引入依赖 4.插件 spring-boot-starter spring-boot-starter-test mybatis-plus-boot-starter MySQL lombok:用于简化实体类的创建…

查看 PostgreSQL 中的表定义和说明

要查看 PostgreSQL 中的表定义和说明&#xff0c;您可以使用以下命令&#xff1a; 1. 查看表定义&#xff1a; \d <table_name>例如&#xff0c;要查看 pg_extension 表的定义&#xff0c;您可以运行以下命令&#xff1a; \d pg_extension2. 查看表说明&#xff1a; …

山东移动:全业务域核心系统升级,实现大幅降本增效

本文介绍了山东移动引入 OceanBase 到山东省 BOSS/CRM 核心系统领域的相关情况。欢迎访问 OceanBase 官网获取更多信息&#xff1a;https://www.oceanbase.com/ 中国移动通信集团山东有限公司&#xff08;以下简称"山东移动"&#xff09; 隶属于中国移动通信集团公司…

【刷题之路】LeetCode 232. 用栈实现队列

【刷题之路】LeetCode 232. 用栈实现队列 一、题目描述二、解题1、图解主要思路2、先实现栈3、实现各个接口3.1、初始化接口3.2、入队接口3.3、出队接口3.4、取队头接口3.5、判空接口3.6、释放接口 一、题目描述 原题连接&#xff1a; 232. 用栈实现队列 题目描述&#xff1a;…

Babylon.js大规模场景优化实践

在本文中&#xff0c;我们将重点介绍用于优化 Babylon.js 海港场景的优化和架构技术。 我们的场景总共有超过 600 个网格和 1,000,000 个顶点。 在我们的 2018 Macbook Pro 上&#xff0c;它在 Google Chrome 中始终以 45 FPS 的速度运行。 我们发现 Firefox 约为 40 FPS&#…

公厕卫生间除臭杀菌空气净化解决方案

人每天平均大约有80%以上时间是在室内度过&#xff0c;室内空气同时面临着化学污染、物理污染和生物污染&#xff0c;据统计室内污染比室外高5~10倍&#xff0c;因此室内空气质量问题对人的伤害比室外污染更大。常见的空气污染有病毒、烟雾、甲醛、细菌、PM2.5等&#xff0c;如…

淘宝商品详情数据采集,支持高并发请求

一、如何通过手动方式查看阿里巴巴商品详情页面的数据 1.淘宝天猫商品详情 API 接口&#xff08;item_get - 获得淘宝商品详情接口&#xff09;&#xff0c;淘宝API 接口代码对接可以获取到宝贝 ID&#xff0c;宝贝标题&#xff0c;价格&#xff0c;优惠价&#xff0c;掌…

C++优化方法

C优化方法 文章目录 C优化方法1.整数运算效率高于浮点2.除法和取余4.通过2的幂次进行除法和取余数5.使用数组下标6.全局变量->局部变量7.指针值不改变的->拷贝到局部变量8.变量类型9.局部变量10.指针11.指针链12.条件执行13.布尔表达式和范围检查14.布尔表达式和零值比较…

【UE4 像素流 WEBUI插件】部署像素流

目录 一、单实例本地像素流送 步骤 1. 勾选插件 2. 打包工程并启动信令服务器 3. 创建快捷方式并启动游戏 二、单实例局域网像素流送 步骤 1. 编辑cirrus.js 2. 编辑快捷方式属性 3. 启动 三、集成WEBUI插件 一、单实例本地像素流送 步骤 1. 勾选插件 勾选使用“Pix…

数字化时代下,企业如何利用数字化提升企业竞争力?

在数字化时代的今天&#xff0c;企业越来越意识到数字化的重要性。数字化已经成为企业竞争的关键。在数字化时代下&#xff0c;企业的竞争力也已经从传统的硬实力向软实力转变。企业需要利用数字化技术来提高竞争优势&#xff0c;从而在激烈的竞争中脱颖而出。 目前&#xff0c…

Mysql_行锁、临键锁、间隙锁的理解

目录 行锁间隙锁临键锁总结 行锁 行锁&#xff0c;也称为记录锁。 当我们针对主键或者唯一索引加锁的时候&#xff0c;Mysql默认会对查询的这一行数据加行锁&#xff0c;避免其他事务对这一行数据进行修改。 间隙锁 间隙锁&#xff0c;顾名思义&#xff0c;就是锁定一个索引…

浅谈作为程序员如何写好文档:结构化写作

我作为从一名懵懂的实习生转变为工程师的工作经历中&#xff0c;伴随着技术经验的成长&#xff0c;也逐渐意识到了编写文档是知识和经验传递给其他人的最有效方式。通过文档&#xff0c;可以分享我的技术知识和最佳实践&#xff0c;使其他人更好地理解我的工作。在这里&#xf…