当前位置: 首页 > news >正文

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

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 ; serial1D ; refresh1H ; retry1W ; expire3H )  ; minimum@  NS  ns.qiange.comns.qiange.com A 172.17.8.101www    A  172.17.8.1025、检查配置文件和域名解析库文件是否有错
named-checkconf
named-checkzone qiange.com /var/named/qiange.com.zone6、启动服务
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	; serial1D	; refresh1H	; retry1W	; expire3H )	; 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.zoneszone "qiange.com" IN {type  slave;   #服务器的类型masters { 172.17.8.10;};  #主服务器的IPfile "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#53Name:	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#53Name:	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   qiangenj       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 ; serial1D ; refresh1H ; retry1W ; expire3H )  ; minimumNS  njnj   A   172.17.8.11www  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 #不是第一次启动服务


相关文章:

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

1、DNS服务器的相关概念和技术 1.1 DNS服务器的类型 主DNS服务器从DNS服务器缓存DNS服务器(forward DNS服务器{转发器}) 1.1.1 主DNS服务器的作用 管理和维护所负责解析的域内解析库的服务器1.1.2 从DNS服务器的作用 从主服务器或从服务器“复制”解…...

UE4/5多人游戏详解(七、自定义委托,实现寻找会话和加入会话的函数,通过Steam进行两台电脑的联机)

目录 可能出现问题(在六部分的测试可能无法连接的问题【在末尾加上了,怕有人没看见在这里写一下】) 自定义委托 调整位置 创建更多的委托和回调函数给菜单: 多播和动态多播 代码: 委托变量 代码: 回…...

【数据库多表操作】sql语句基础及进阶

常用数据库: 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它是长期存储在计算机内、有组织、有结构的数据集合。数据库是信息系统的核心部分,现代软件系统中大量采用了数据库管理系统(DBM…...

DPDK和RDMA的区别

网络的发展好像在各方面都是滞后于计算和存储,时延方面也不例外,网络传输时延高,逐渐成为了数据中心高性能的瓶颈。因为传统两个节点间传输数据的网络路径上有大量的内存拷贝,导致网络传输效率低下,网络数据包的收发处…...

体验 Google Bard

环境 windows 10 64bitGoogle Bardpython 3.8 简介 本篇介绍一个开源的 Google 聊天机器人Bard 的 API 逆向工程,使用它,可以免费的使用 Bard 服务,项目地址:https://github.com/acheong08/Bard 安装及使用 通过 pip 来安装 pip &…...

MITA触摸屏维修WP4053米塔工控机控制屏维修

MITA-TEKNIK米塔触摸屏维修工控机工控屏控制器维修DISPLAY 2COM全系列型号 Mita-Teknik触摸屏维修常见故障:上电无显示,运行报故障,无法与电脑通讯,触摸无反应,触控板破裂,触摸玻璃,上电黑屏&a…...

Nacos简介 安装 配置

简介 什么是注册中心 注册中心在微服务项目中扮演着非常重要的角色,是微服务架构中的纽带,类似于通讯录,它记录了服务和服务地址的映射关系。在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,…...

五、MyBatis各种查询功能

MyBatis的各种查询功能 如果查询出的数据只有一条,可以通过 实体类对象接收List集合接收Map集合接收 如果查询出的数据有多条,一定不能用实体对象接收,会抛TooManyResultsException,可以通过 实体类类型的List集合接收Map类型…...

uni-app——picker组件的用法、时间、日期、地区选择器等

1、uniapp–picker组件 <template><view class"signUp"><view class"signUp_dv1"><u-form :model"form" ref"uForm" label-width"95px"><u-form-item label"日期" :required"tr…...

什么情况需要考虑 mysql 分表

最近看到公司的其中一个数据库用户表每个月都要几百万的新用户数据增加&#xff0c;目前单表已经是两千多万了。所以找了 DBA 讨论&#xff0c;发现以前学的知识&#xff0c;以及网上的一些资料其实说的并不是很正确&#xff0c;比如 mysql 单表不建议超过一千万&#xff0c;我…...

系统架构师02-架构设计 20分

1.架构基本概念 *质量属性效用树&#xff1a;是对系统质量属性进行识别和优先级排序的重要工具 。 包括&#xff1a; 性能&#xff1a;效率指标&#xff0c;处理任务所需时间或单位时间内的处理量。 可用性&#xff1a; 可靠性&#xff1a; 容错&#xff1a;出现错误后人能保…...

【python视图3】networkx图操作示例

一、说明 根据定义&#xff0c;图是节点&#xff08;顶点&#xff09;以及已识别的节点对&#xff08;称为边、链接等&#xff09;的集合。在 NetworkX 中&#xff0c;节点可以是任何可哈希对象&#xff0c;例如文本字符串、图像、XML 对象、另一个图形、自定义节点对象等。 如…...

网络地址转换应用

如图所示,企业使用一台AR 路由器作为出口设备,路由器配置NAT Outbound为私网用户提供访问Internet服务,同时配置NAT Server将私网WEB服务器发布到公网上,对外网用户提供服务。运营商仅为该单位分配了一个公网IP,此地址既作为AR出接口的IP地址,也作为NAT Outbound和NAT Se…...

强化学习-Double DQN、竞争网络结构和Rainbow(第4章)

来源书籍&#xff1a; TENSORFLOW REINFORCEMENT LEARNING QUICK START GUIDE 《TensorFlow强化学习快速入门指南-使用Python动手搭建自学习的智能体》 著者&#xff1a;[美]考希克巴拉克里希南&#xff08;Kaushik Balakrishnan&#xff09; 译者&#xff1a;赵卫东 出版…...

Unity 性能优化锦集

Unity作为一款主流的游戏开发引擎&#xff0c;不仅提供了强大的编辑器和开发工具&#xff0c;还可以让开发者轻松地实现高质量的3D游戏。但是&#xff0c;随着游戏规模的不断扩大和玩家需求的增加&#xff0c;游戏的性能问题也变得越来越重要。因此&#xff0c;在使用Unity进行…...

JS之Map的基本使用

一、Map的基本API 创建&#xff1a; const map new Map()插入&#xff1a;map.set("name", "郑建")读取&#xff1a;map.get("name")判断&#xff1a;map.has("name")删除&#xff1a;map.delete大小&#xff1a;map.size遍历&#…...

音视频八股文(6)-- ffmpeg大体介绍和内存模型

播放器框架 常用音视频术语 • 容器&#xff0f;文件&#xff08;Conainer/File&#xff09;&#xff1a;即特定格式的多媒体文件&#xff0c; 比如mp4、flv、mkv等。 • 媒体流&#xff08;Stream&#xff09;&#xff1a;表示时间轴上的一段连续数据&#xff0c;如一 段声音…...

4.25~~~~~

接着之前PE文件结构的预习 DOS 定位到NT 怎么操作的&#xff1f; 用的是e_lfanew&#xff0c;然后是相对于文件头的偏移量&#xff08;也就是raw表示方法&#xff09; 现在有个问题&#xff0c;为什么e_lfanew 这个变量不直接存储PE头 的绝对地址呢&#xff1f; 比如说&…...

Android 9.0 系统设置显示主菜单添加屏幕旋转菜单实现旋转屏幕功能

1.前言 在android9.0的系统rom定制化开发中,在对系统设置进行定制开发中,有产品需求要求增加旋转屏幕功能的菜单,就是在点击旋转屏幕菜单后弹窗显示旋转0度,旋转 90度,旋转180度,旋转270度针对不同分辨率的无重力感应的大屏设备的屏幕旋转功能的实现,接下来就来分析实现…...

Python数据结构与算法-欧几里算法(p95)

一、欧几里算法原理 欧几里得公式 欧几里得算法&#xff1a;gcd(a,b) gcd(b, a mod b) &#xff1b; mod是指模&#xff0c;即a/b取余数。 运算示例&#xff1a; gcd&#xff08;60,21&#xff09; gcd(21,18) gcd(18,3)gcd(3,0) 证明略 最大公约数-欧几里得求解 &#xff08…...

如何通过哈氏训练提升孩子的学习能力以应对多动症表现和作业拖延症?

如何运用哈氏训练助力孩子克服多动症表现与作业拖延 哈氏训练是一种有效的应对策略&#xff0c;尤其对有多动症表现和作业拖延症的孩子。首先&#xff0c;这种训练方法可以帮助孩子建立稳定的日常作息&#xff0c;提高他们的注意力和自我控制能力。通过结构化的活动和渐进式的任…...

Token火了,一文读懂词元经济产业链

“词元&#xff08;Token&#xff09;是新的大宗商品。”在英伟达2026年度开发者大会&#xff08;GTC&#xff09;上&#xff0c;英伟达创始人兼CEO黄仁勋首次提出词元经济。 黄仁勋提出一个公式&#xff1a;收入每瓦词元数可用千兆瓦数。他解释称&#xff0c;数据中心如今已经…...

多图拼长条与宫格拼接批处理备忘

手头有一批产品白底图&#xff0c;需要批量产出两类物料&#xff1a;一类是横向四连图做详情对比&#xff0c;一类是 22 宫格做缩略封面。统一用【批量图片拼接工具】走完&#xff0c;下面只记参数组合和踩坑点&#xff0c;不写实现细节。输入侧是「主文件夹」路径&#xff0c;…...

论文AI率高不等于抄袭2026年高校政策盘点

论文AI率高&#xff0c;会不会被认定为学术不端&#xff1f;会不会影响毕业&#xff1f;和传统的"查重超标"性质一样吗&#xff1f; 这些问题在2026年毕业季被问得很多。这篇文章梳理清楚。 AI率高和抄袭&#xff1a;两件不同的事 先把概念说清楚&#xff1a; 传…...

如何用PyFlow创建自定义节点:从函数到可视化组件的完整指南

如何用PyFlow创建自定义节点&#xff1a;从函数到可视化组件的完整指南 【免费下载链接】PyFlow Visual scripting framework for python 项目地址: https://gitcode.com/gh_mirrors/py/PyFlow PyFlow是一款强大的Python可视化脚本框架&#xff0c;它允许开发者通过拖拽…...

如何通过GitHub配置Resume简历:无需代码的终极解决方案

如何通过GitHub配置Resume简历&#xff1a;无需代码的终极解决方案 【免费下载链接】resume &#x1f680; 在线简历生成器 项目地址: https://gitcode.com/gh_mirrors/resu/resume Resume是一款功能强大的在线简历生成器&#xff0c;让你无需编写代码即可轻松创建专业简…...

数据结构与算法学习笔记

java一.数据结构简介1. 为什么要有数据结构&#xff1f;数据太多、太乱 → 无法高效处理 → 必须结构化2. 数据结构的两大分类逻辑结构&#xff1a;数据之间的关系&#xff08;怎么理解&#xff09;物理结构&#xff1a;内存中的存储方式&#xff08;怎么实现&#xff09;3. 逻…...

别再被芯片手册吓到!用74HC595手把手教你读懂时序图(附示波器实测波形)

从零破解74HC595时序图&#xff1a;示波器实战与代码调优指南 第一次翻开74HC595的数据手册时&#xff0c;那些纵横交错的箭头、虚线、时间参数让我彻底懵了。作为电子爱好者&#xff0c;我们常被告知"要严格按照时序图操作"&#xff0c;但没人告诉我们这些符号究竟对…...

避开这5个坑!MES工艺路线管理中的常见错误及解决方案

避开这5个坑&#xff01;MES工艺路线管理中的常见错误及解决方案 在制造业数字化转型的浪潮中&#xff0c;MES&#xff08;制造执行系统&#xff09;已成为提升生产效率的关键工具。然而&#xff0c;许多企业在实施工艺路线管理模块时&#xff0c;常常陷入一些看似简单却影响深…...

告别重复劳动:用快马平台生成你的专属工作流自动化agent

今天想和大家分享一个提升工作效率的小技巧——用自动化agent框架处理那些重复又繁琐的工作流程。作为一个经常要组织会议的程序员&#xff0c;我发现自己每天要花大量时间做同样的事情&#xff1a;从聊天记录里提取会议信息、手动创建日历事件、再给参会人发邮件通知。直到发现…...