回炉重造九---DNS服务器

news2024/11/18 16:31:31

1、DNS服务器的相关概念和技术

1.1 DNS服务器的类型

  • 主DNS服务器
  • 从DNS服务器
  • 缓存DNS服务器(forward DNS服务器{转发器})

1.1.1 主DNS服务器的作用

管理和维护所负责解析的域内解析库的服务器

1.1.2 从DNS服务器的作用

从主服务器或从服务器“复制”解析库副本

1.2 解析形式

  • 正向解析:域名------>IP地址
  • 反向解析:IP地址------->域名

1.3 各种资源记录

注意:区域解析库是由各种资源记录组成的(一般只有SOA记录、NS记录、A记录)

  • SOA资源记录: SOA 记录表示此域名的权威解析服务器地址。 当要查询的域名在所有递归解析服务器中没要域名解析的缓存时,就会回源来请求此域名的SOA记录,也叫权威解析记录 。
  • A记录(正向解析):把域名解析成IP
  • PTR(反向解析):把IP解析成域名
  • NS:name server,用于标明当前区域的DNS服务器

2.DNS的相关配置

(DNS服务器软件:bind,powerdns,dnsmasq,coredns,unbund**)

1.1 bind安装包相关文件

  • BIND主程序:/usr/sbin/named
  • 服务脚本和Unit名称:/etc/rc.d/init.d/named,/usr/lib/systemd/system/named.service
  • 主配置文件:/etc/named.conf, /etc/named.rfc1912.zones, /etc/rndc.key
  • 管理工具:/usr/sbin/rndc:remote name domain controller,默认与bind安装在同一主机,且
    只能通过127.0.0.1连接named进程,提供辅助性的管理功能;953/tcp
  • 解析库文件:/var/named/ZONE_NAME.ZONE
    注意:
    (1) 一台物理服务器可同时为多个区域提供解析
    (2) 必须要有根区域文件;named.ca
    (3) 应该有两个(如果包括ipv6的,应该更多)实现localhost和本地回环地址的解析库

1.3 相关命令

1.3.1 相关文件检查的命令

1、主配置文件语法检查
named-checkconf
2、解析库文件语法检查
named-checkzone “域名”  区域解析文件
3、使DNS配置文件生效
(1)rndc  reload
(2)systemctl reload named
(3)service named reload
4、测试和管理
(1)dig
(2)nslookup

1.3.2 测试和管理的命令—rndc

rndc COMMAND
COMMAND:
 status: 查看状态
reload: 重载主配置文件和区域解析库文件
reload zonename: 重载区域解析库文件
retransfer zonename: 手动启动区域传送,而不管序列号是否增加
notify zonename: 重新对区域传送发通知
reconfig: 重载主配置文件
querylog: 开启或关闭查询日志文件/var/log/message
trace: 递增debug一个级别
trace LEVEL: 指定使用的级别
notrace:将调试级别设置为 0
flush:清空DNS服务器的所有缓存记录

2、DNS的相关案例

2.1 DNS正向域名解析

在这里插入图片描述

服务器名称IP地址
dns-server172.17.8.101
web-server172.17.8.102
clint172.17.8.103

(1)环境初始化

1、关闭防火墙和selinux
2、时间同步

(2)DNS服务器的配置

1、安装dns服务(安装bind包)
yum -y install bind bind-utils
2、修改named的配置文件
vim /etc/named.conf      
#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query   { localhost; };
allow-transfer { none;};
3、创建dns区域解析库文件
vim /etc/named.rfc1912.zones
zone "qiange.com" {
 type master;
 file "qiange.com.zone";
};
4、配置区域解析库
cp -a /var/named/named.localhost /var/named/qiange.com.zone
#如果没有-a,需要改权限。chgrp named wang.org.zone
vim /var/named/qiange.com.zone
@  IN SOA qiange.com admin.wang.org. (
          2019042214 ; serial
         1D ; refresh
         1H ; retry
         1W ; expire
         3H )  ; minimum
 @  NS  ns.qiange.com
 ns.qiange.com A 172.17.8.101
 www    A  172.17.8.102
 5、检查配置文件和域名解析库文件是否有错
named-checkconf
named-checkzone qiange.com /var/named/qiange.com.zone
 6、启动服务
systemctl start named      #第一次启动服务
rndc reload           #不是第一次启动服务

(3)web服务器的配置

(1)安装http服务
yum -y install httpd            
(2)配置主页面
echo www.wang.org > /var/www/html/index.html
(3)启动服务
systemctl start httpd

(4)客户端的配置

vim /etc/sysconfig/network-scripts/ifcfg-eth0
DNS1=172.17.8.101
#有以下记录,算是成功
cat /etc/resolv.conf          
# Generated by NetworkManager
nameserver  172.17.8.101
#测试网页,能显示就是成功
curl www.wang.org         

2.2 DNS主从搭建

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6yb7Sziw-1682220052348)(C:%5CUsers%5CHP%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5C1681972969481.png)]

服务器名称IP地址
master-dns172.17.8.10
salve-dns172.17.8.11
web-server172.17.8.13
client172.17.8.12

(1)主DNS的配置

[root@dns-master ~]# yum -y install bind bind-utils
[root@dns-master ~]# vim /etc/named.conf
options {
//      listen-on port 53 { 127.0.0.1; };   #注释
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
//      allow-query     { localhost; };  #注释
        allow-transfer  { 172.17.8.11; #配置从DNS的IP };  #只允许从服务器进行区域传输
[root@dns-master ~]# vim /etc/named.rfc1912.zones
zone "qiange.com" IN {
      type master;
      file "qiange.com.zone";
};
[root@dns-master ~]# cp -a /var/named/named.localhost /var/named/qiange.com.zone
[root@dns-master named]# cat qiange.com.zone 
$TTL 1D
@	IN SOA	ns.qiange.com admin.qiange.com. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
@	NS	master.qiange.com.
@       NS      salve.qiange.com.

master  A       172.17.8.10
salve   A       172.17.8.11
www     A       172.17.8.12
[root@dns-master ~]#named-checkconf 
[root@dns-master ~]#named-checkzone qiange.com /var/named/qiange.com.zone
[root@dns-master ~]#systemctl start named

(2)从DNS的配置

[root@dns-salve ~]#yum -y install bind bind-utils
[root@dns-salve ~]#vim /etc/named.conf
options {
//      listen-on port 53 { 127.0.0.1; };  #注释
        listen-on-v6 port 53 { ::1; };
//      allow-query     { localhost; };  #注释
        allow-transfer     { none; };  #不允许其他主机进行区域传输
 [root@dns-salve ~]#vim /etc/named.rfc1912.zones
 zone "qiange.com" IN {
      type  slave;   #服务器的类型
      masters { 172.17.8.10;};  #主服务器的IP
      file "slaves/qiange.com.slave"; #注意:存放从主服务器节点同步过来的区域解析文件的路径不能写错
 };
 [root@dns-salve ~]#systemctl start named
 [root@dns-salve slaves]# ll qiange.com.slave  #看此文件是否生成
-rw-r--r-- 1 named named 326 421 15:41 qiange.com.slave

(3)web-server的配置

(1)安装http服务
[root@web-server ~]#yum -y install httpd            
(2)配置主页面
[root@web-server ~]#echo hello > /var/www/html/index.html
(3)启动服务
[root@web-server ~]#systemctl start httpd

(4)客户端配置

[root@client ~]#vim /etc/sysconfig/network-scripts/ifcfg-eth0
DNS1=172.17.8.10
DNS2=172.17.8.11

#测试
[root@client ~]# curl www.qiange.com
hello
[root@client ~]# nslookup www.qiange.com
Server:		172.17.8.10
Address:	172.17.8.10#53

Name:	www.qiange.com
Address: 172.17.8.12

#关闭主DNS服务
[root@client ~]# nslookup www.qiange.com
Server:		172.17.8.11
Address:	172.17.8.11#53

Name:	www.qiange.com
Address: 172.17.8.12

实验报错总结

(1)存放从主服务器节点同步过来的区域解析文件的路径不能写错,报错显示没有读到区域解析库文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iF8HIIdQ-1682220052348)(C:%5CUsers%5CHP%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5C1681976554944.png)]

(2)用named-checkzone qiange.com /var/named/qiange.com.zone检测出区域文件格式有错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8xhWAppO-1682220052349)(C:%5CUsers%5CHP%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5C1681978833571.png)]

2.3 实现DNS父域和子域服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z949oBoN-1682220052349)(C:%5CUsers%5CHP%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5C1681979247134.png)]

服务器的名称IP地址
dns-qiange172.17.8.10
dns-nj172.17.8.11
web-server1172.17.8.100
web-server2172.17.8.110
client172.17.8.6

(1)172.17.8.10 父域DNS的配置

yum install bind -y
vim /etc/named.conf
#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query   { localhost; };
#只允许从服务器进行区域传输
allow-transfer { 172.17.8.11;};
#建议关闭加密验证
dnssec-enable no;
dnssec-validation no;
vim /etc/named.rfc1912.zones  
#加上这段
zone "qiange.com" {
 type master;
 file  "qiange.com.zone";
};
cp -p /var/named/named.localhost /var/named/qiange.com.zone
#如果没有-p,需要改权限。chgrp named wang.org.zone
vim /var/named/wang.org.zone
$TTL 1D
@ IN SOA qiange.com admin.qiange.com. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
  @      NS   qiange
 nj       NS  nj
qiange   A   172.17.8.10
nj       A   172.17.8.11
www     A    172.17.8.100       
systemctl start named      #第一次启动服务
rndc reload                #不是第一次启动服务

(2)172.17.8.11 子域DNS的配置

yum install bind -y
vim /etc/named.conf      
#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query   { localhost; };
allow-transfer { none;};
vim /etc/named.rfc1912.zones
zone "nj.qiange.com" {
 type master;
 file "nj.qiange.com.zone";
};
cp -p /var/named/named.localhost /var/named/nj.qiange.com.zone
#如果没有-p,需要改权限。chgrp named wang.org.zone
vim /var/named/nj.qiange.com.zone
$TTL 1D
@  IN SOA master admin.wang.org. (
          2019042214 ; serial
         1D ; refresh
         1H ; retry
         1W ; expire
         3H )  ; minimum
     NS  nj
     nj   A   172.17.8.11
     www  A      172.17.8.110
systemctl start named      #第一次启动服务
rndc reload           #不是第一次启动服务

named wang.org.zone
vim /var/named/nj.qiange.com.zone
$TTL 1D
@ IN SOA master admin.wang.org. (
2019042214 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS nj
nj A 172.17.8.11
www A 172.17.8.110
systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务


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

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

相关文章

检测并打印C++编译器支持的feature(附Visual Studio 2022和gcc-12测试、对比结果)

C标准快速迭代,不同的系统平台和编译器对C各种新功能的支持不同,通过这个程序可以测试所用编译器对各个版本C的支持情况。另一方面,可以在代码中通过这些宏针对不同版本编写不同的代码分支。 源码下面附上Visual Studio 2022的测试结果&#…

32道子网划分习题详细解析

目录 1 子网划分概念: 2 划分方法: 子网划分方法:段,块,数的计算三步。 段就是确定ip地址段中既有网络地址,又有主机地址的那一段是四段中的那一段? 块就确定上一步中确定的那一段中的主机…

【C语言】21-结构体

本文目录 • 一、什么是结构体 • 二、结构体的定义 • 三、结构体变量的定义 • 四、结构体的注意点 • 五、结构体的初始化 • 六、结构体的使用 • 七、结构体数组 • 八、结构体作为函数参数 • 九、指向结构体的指针 说明:这个C语言专题,是学习iOS开…

算法设计与智能计算 || 专题七: 主成分分析的统计学视角

主成分分析的统计学视角 文章目录 主成分分析的统计学视角PCA 的统计学视角1. 寻找第一个主成分2. 获取第二个主成分3. 非零均值随机变量的主元4. 零均值随机变量的样本主元5. PCA 降维案例 主成分分析是将高维空间中的数据集拟合成一个低维子空间的方法,到目前为止…

搞定常见八大排序

文章目录 注意事项插入排序插入排序希尔排序 分组预排序选择排序堆排序直接选择排序(最拉胯的排序) 交换排序冒泡排序快速排序1. hoare版本如何解决快排缺陷?2.挖坑法版本3.双指针法版本(建议)快排算法优化实现非递归快排 归并排序归并排序 非…

Rainbond 结合 Jpom 实现云原生 本地一体化项目管理

Jpom 是一个简而轻的低侵入式在线构建、自动部署、日常运维、项目运维监控软件。提供了: 节点管理:集群节点,统一管理多节点的项目,实现快速一键分发项目文件项目管理:创建、启动、停止、实时查看项目控制台日志&…

CentOS系统设置中文输入法,并切换输入法

1.点击Application—>System Tools—>Settings,选择Region&Language 2.在Input Sources中,选择左下角的“”,找到Chinese(Intelligent Pinyin),选中后点击右上角的“add”即可 3.选择好后,就可以切换中英…

可口可乐如何管理其全球供应链

目录 (一)可口可乐供应链管理的核心组成部分 (二)可口可乐管理全球供应链的挑战 (三)可口可乐利用技术简化其供应链 转载自供应链星球 可口可乐在200多个国家和地区拥有约225家装瓶合作伙伴,并…

【李沐—AutoGluon背后的技术】

1.资料来源 AutoGluon背后的技术_哔哩哔哩_bilibili 也是一种Automl框架【在尽量不需要人的帮助下,对输入进行特征提取,选取适合的机器学习模型对它进行训练】。大部分基于超参数搜索技术【从数十或者数百个参数中选取一个合适的参数,媲美人…

vue插槽的使用

文章目录 前言默认插槽具名插槽作用域插槽 前言 插槽总共分为3类&#xff1a;默认插槽&#xff0c;具名插槽&#xff0c;作用域插槽 默认插槽 默认插槽只需要在子组件的新增一个slot标签&#xff0c;父组件的子组件标签的内容就是要插入的内容 父组件 <template v-bind…

mysql “order by”是怎么工作的?

开发应用的时候&#xff0c;一定会经常碰到需要根据指定的字段排序来显示结果的需求。还是以我们 前面举例用过的市民表为例&#xff0c;假设你要查询城市是“杭州”的所有人名字&#xff0c;并且按照姓名排序返回 前1000个人的姓名、年龄。 假设这个表的部分定义是这样的&…

【linux】基于单例模式实现线程池

文章目录 一、线程池1.1 池化的概念1.2 线程池的实现1.3 线程池的使用场景 二、单例模式2.1 单例模式概念2.2 单例模式的线程池2.3 防过度优化 三、源码 一、线程池 1.1 池化的概念 当我们处理任务的时候&#xff0c;一般就是来一个任务我们就创建一个线程来处理这个任务。这…

类实例化对象的存储与内存对齐,this指针与调用成员函数传参的本原面目(两种调用方式)

类的实例化对象的内存存储方式与内存对齐 对于类当中定义的成员函数&#xff0c;是放在公共代码区的&#xff0c;在公共代码区有类成员函数表。对于不同的实例化对象而言&#xff0c;它里面的各个成员变量都是不一样的&#xff0c;但是如果他们分别调用相同名字的成员函数&…

cmd切换壁纸 适用windows10

文章目录 代码代码讲解参考文章菜鸟的目录结构注意 昨天菜鸟上班但是真的没活干&#xff0c;闲着无聊&#xff0c;突然发现自己壁纸好久都是一个&#xff0c;看着真的烦了&#xff0c;但是下载一个壁纸软件又感觉实际用处不大还占着内存&#xff0c;所以菜鸟就想&#xff0c;要…

Java Type接口出现的原因以及它和泛型的关系

Java泛型很多人都用过&#xff0c;但是对于其中的原理可能很多人可能都不太清楚。 首先给出一个结论&#xff1a;Java的泛型是伪泛型&#xff0c;因为JVM在编译以后会将所有泛型参数擦除掉&#xff0c;这个就叫类型擦除。 下面用一段代码来证明&#xff0c;毕竟千言万语BB不如…

【软考数据库】第三章 数据结构与算法

目录 3.1 数据结构 3.1.1 线性结构 3.1.2 数组 3.1.3 矩阵 3.1.4 树与二叉树 3.1.5 图 3.2 查找 3.2.1 顺序查找 3.2.2 折半查找 3.2.3 哈希表 3.3 排序 3.3.1 直接插入排序 3.3.2 希尔排序 …

Win10任务栏卡死怎么办?这3个方法快收藏!

案例&#xff1a;win10任务栏卡死 【姐妹们&#xff0c;我的win10任务栏一直卡着&#xff0c;我完全没法使用计算机了&#xff0c;遇到这种情况&#xff0c;我应该怎么做呢&#xff1f;求大家给我支支招&#xff01;感谢感谢&#xff01;】 我们使用电脑的过程中&#xff0c;…

MyBatis的添加和简单使用

什么是MyBatis mybatis是一个方便我们更简单的操作数据库的框架&#xff0c;让我们不用再使用JDBC操作数据库。 MyBatis的创建 老项目添加mybatis&#xff0c;首先要安装好editstarters插件&#xff0c;然后在pom.xml中右键generate选择edit插件&#xff0c;注意不仅要添加m…

多维时序 | MATLAB实现BO-CNN-BiLSTM贝叶斯优化卷积双向长短期记忆网络数据多变量时间序列预测

多维时序 | MATLAB实现BO-CNN-BiLSTM贝叶斯优化卷积双向长短期记忆网络数据多变量时间序列预测 目录 多维时序 | MATLAB实现BO-CNN-BiLSTM贝叶斯优化卷积双向长短期记忆网络数据多变量时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 基于贝叶斯优化卷…

C/C++|物联网开发入门+项目实战|宏定义|数据声明|位操作|类型修饰符|访问固定内存位置|嵌入式C语言高级|常见面试题目讲解-学习笔记(13)

文章目录 常见面试题目讲解宏定义数据声明类型修饰符的使用总结位操作访问固定内存位置 参考&#xff1a; 麦子学院-嵌入式C语言高级-C语言函数的使用-常见面试题目讲解 参考&#xff1a; 嵌入式程序员应该知道的0x10个基本问题 常见面试题目讲解 宏定义 1 .用预处理指令#d…