Linux搭建dns主从服务器

一、实验要求

配置Dns主从服务器,能够实现正常的正反向解析

二、知识点

1、DNS简介

DNS(Domain Name System)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。 DNS系统使用的是网络的查询,那么自然需要有监听的port。DNS使用的是53端口,在/etc/services(搜索domain)这个文件中能看到。通常DNS是以UDP这个较快速的数据传输协议来查询的,但是没有查询到完整的信息时,就会再次以TCP这个协议来重新查询。所以启动DNS时,会同时启动TCP以及UDP的port53。

2、DNS域名解析的过程

1、在浏览器中输入www . qq .com 域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。 2、如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。 3、如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。 4、如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。

5、如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器 收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理qq.com的DNS服务器地址给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找qq.com域服务器,重复上面的动作,进行查询,直至找到www . qq .com主机。 6、如果用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把请求转至上上级,以此循环。找到最后把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。 注:从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间使用的交互查询就是迭代查询。 114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用,干净无广告,解析成功率相对来说更高,国内用户使用的比较多,而且速度相对快、稳定,是国内用户上网常用的DNS。 8.8.8.8是GOOGLE公司提供的DNS,该地址是全球通用的,相对来说,更适合国外以及访问国外网站的用户使用。

提供DNS服务的软件叫bind,服务名是named。

(正向解析)资源记录文件

主机名       TTL             INTER            资源记录类型           数据

(反向解析)资源记录文件

ip                TTL             INTER              资源记录类型          数据

资源记录类型

A                     通过域名能够查询到对应ipv4

AAAA              通过域名能够查询到对应ipv6

CNAME           别名资源记录www.baidu.com wwww.baidu,com

PTR                 指针记录lpv4/ipv6 查询到一个域名

NS                    dns解析记录类型(标记本地dns服务器的主机名)

MX                    邮件解析记录类型(标记邮件服务器的主机名)

SoA                  起始授权记录(主从服同步masterdns TTL INTER 资源记录类型数据 邮箱地址

                          (版本、 检查时间 、重试时间 、失效时间 TTL)

时间单位:M(分钟),H(小时),D(天),W(周),默认是秒

Linux搭建DNS主从服务器
需求:
利用两台linux主机,配置dns主从服务器,能够实现正常的正反向解析配置思路:

配置文件:/etc/named.conf            -->  主配置文件
/etc/named.rfc1912.zones     -->  域配置文件(此配置文件会默认加载到主配置文件)
/var/named/                   -->  所有的域名解析文件所在目录


主服务器:

在主服务器上对主配置文件配置对本服务器进行监听IP地址和端口号53,允许至少‘从服务器’主机可以访问,允许对从服务器的IP进行“传送数据”
 对主服务器的域配置文件,进行相应域的配置
在  /var/named/  文件下创建域名解析文件,并对其进行相应编写
从服务器:

在主配置文件对本服务器进行监听IP地址和端口号53,允许相应主机进行访问,
对域配置文件,进行相应域的配置
重启DNS服务后,观察  /var/named/slaves/ 文件目录下的变化
 

三、实验步骤

下载并安装服务

[root@server ~]# yum install bind -y

配置DNS正向解析

[root@server ~]# vim /etc/named.conf 
options {listen-on port 53 { 192.168.1.14; };directory       "/var/named";
zone "baidu.com" IN {type master;file "named.baidu.com";
};
[root@server ~]# vim /var/named/named.baidu.com 
$TTL 1D
@       IN      SOA     @     baidu.com (03M3M3M3M)IN      NS      dns.baidu.com.
dns     IN      A       192.168.1.14
mail    IN      A       192.168.1.200
www     IN      A       192.168.1.100
a       IN      A       192.168.1.50
aaa     IN      CNAME   a
~     

重启服务 

[root@server ~]# systemctl restart named

测试

[root@server ~]# nslookup 
> server 192.168.1.14
Default server: 192.168.1.14
Address: 192.168.1.14#53
> www.baidu.com
Server:		192.168.1.14
Address:	192.168.1.14#53
> aaa.baidu.com
Server:		192.168.1.14
Address:	192.168.1.14#53aaa.baidu.com	canonical name = a.baidu.com.
Name:	a.baidu.com
Address: 192.168.1.50

配置DNS反向解析(主服务器192.168.1.14配置)

vim /etc/named.conf

下边是反向文件的配置

vim /etc/named.conf

[root@server ~]# vim /var/named/named.baidu.arpa 

$TTL 1D
@       IN      SOA     @     baidu.com (03M3M3M3M)IN      NS      dns.baidu.com.
14      IN      PTR     ns.baidu.com.
200     IN      PTR     mail.baidu.com.
100     IN      PTR     www.baidu.com.
50      IN      PTR     a.baidu.com.
aaa     IN      CNAME   a
~                         

[root@server ~]# systemctl restart named
从服务器配置(192.168.1.13配置)

vim /etc/named.conf

[root@server ~]# systemctl restart named

测试(192.168.1.13)

[root@client ~]# nslookup 
> server 192.168.1.14
Default server: 192.168.1.14
Address: 192.168.1.14#53
> aaa.baidu.com               #正向解析
Server:		192.168.1.14
Address:	192.168.1.14#53aaa.baidu.com	canonical name = a.baidu.com.
Name:	a.baidu.com
Address: 192.168.1.50
> 192.168.1.200              #反向解析
200.1.168.192.in-addr.arpa	name = mail.baidu.com.

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

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

相关文章

磁的基本知识

磁的基本知识。 一、磁铁及其基本性质。 1、磁铁的概念。 具有吸引铁、钴、镍等金属能力的物质叫做磁体,俗称磁铁、吸铁石。被吸引的铁、钴、镍等物质叫做铁磁性材料。磁铁吸引铁磁性材料的性质叫做磁性。 2、磁铁的分类。 磁铁可分为天然磁铁和人造磁铁两种。天然…

准备注销CSDN了,再也不用了

动不动就是“外包干了2个月,技术明显…”推荐在首页,看到就烦,彻彻底底的垃圾堆,一个相同的标题滑不到底,点进去就是面试题、推销,牛头不对马嘴,真垃圾(画个圈圈)&#x…

postman导入https证书

进入setting配置中Certificates配置项 点击“Add Certificate”,然后配置相关信息 以上配置完毕,如果测试出现“SSL Error:Self signed certificate” 则将“SSL certificate verification”取消勾选

uni-app使用HBuilderX打包Web项目

非常简单,就是容易忘记 一、找到manifest.json配置Web配置 二、源码视图配置 "h5" : {"template" : "","domain" : "xxx.xx.xx.xxx","publicPath" : "./","devServer" : {&quo…

01 MyBatisPlus快速入门

1. MyBatis-Plus快速入门 版本 3.5.31并非另起炉灶 , 而是MyBatis的增强 , 使用之前依然要导入MyBatis的依赖 , 且之前MyBatis的所有功能依然可以使用.局限性是仅限于单表操作, 对于多表仍需要手写 项目结构: 先导入依赖,比之前多了一个mybatis-plus…

x-cmd pkg | aliyun - 阿里云 CLI

目录 简介首次用户技术特点竞品和相关作品进一步阅读 简介 aliyun 是基于阿里云 OpenAPI 的管理工具,用于与阿里云服务交互,管理阿里云资源。 首次用户 使用 x env use aliyun 即可自动下载并使用 在终端运行 eval "$(curl https://get.x-cmd.com…

(初研) Sentence-embedding fine-tune notebook

由于工作需要,需要对embedding模型进行微调,我调用了几种方案,都比较繁琐。先记录一个相对简单的方案。以下内容并不一定正确,请刷到的大佬给予指正,不胜感激!!! 一.对BGE模型&…

qt学习:实战 读取txt文件+定时器点名

目录 目标 步骤 头文件 配置ui界面 在.h里定义槽函数和字符串链表和定时器指针 在构造函数里读取txt文件并初始化定时器 开始按钮点击函数 开始定时器 停止按钮点击函数 关闭定时器 定时器槽函数 目标 两个按钮,一个开始点名,一个停止点名一个…

HTML动态房屋装饰特效

下面是代码&#xff1a; <!DOCTYPE html> <html lang"en" ><head><meta charset"UTF-8"><title>HTML5房屋装饰工具DEMO演示</title><link rel"stylesheet" href"css/style.css"></he…

JavaScript 类型判断及类型转换规则

文章目录 JavaScript 类型及其判断使用 typeof 判断类型使用 instanceof 判断类型使用 constructor 和 Object.prototype.toString 判断类型JavaScript 类型及其转换JavaScript 函数参数传递cannot read property of undefined 问题解决方案分析一道网红题目JavaScript 类型判断…

Flutter轮播图Banner

使用插件&#xff1a;flutter_swiper 实现轮播图 pubspec.yaml 增加 &#xff1a;flutter_swiper : ^lastest_version 在项目文件夹下打开命令行执行&#xff1a;flutter packages get 安装插件 home_page.dart中使用swiper 程序运行:先启动虚拟设备后&#xff0c;执行命令f…

算法训练 day24 | 77. 组合

77. 组合 题目链接:组合 视频讲解:带你学透回溯算法-组合问题 回溯其实和递归是密不可分的&#xff0c;解决回溯问题标准解法也是根据三部曲来进行的。 1、递归函数的返回值和参数 对于本题&#xff0c;我们需要用一个数组保存单个满足条件的组合&#xff0c;还需要另一个结果数…

【Qt5】QString的成员函数trimmed

2024年1月19日&#xff0c;周五下午 QString 的 trimmed 方法是用于移除字符串两端的空白字符&#xff08;空格、制表符、换行符等&#xff09;的方法。它返回一个新的字符串&#xff0c;该字符串是原始字符串去除两端空白后的结果。 下面是一个简单的示例&#xff1a; #incl…

开发语音产品时设计唤醒词和命令词的技巧

在实际开发语音产品过程中&#xff0c;要达到好的语音识别效果&#xff0c;除了语音算法要给力外&#xff0c;设计出好的唤醒词和命令词也能起到事倍功半的效果。所以下面介绍一下如何设计中文、英文和日文的唤醒词和命令词。 中文唤醒词设计 一般为4-6个字&#xff0c;4个字最…

setinel 阿里的限流方式

启动命令 java -jar sentinel-dashboard-1.8.1.jar --server.port8082 账号密码都是 sentinel 导入依赖 配置文件配置 spring:cloud:#限流sentinel:transport:#默认地址dashboard: localhost:8082 #配置security验证账号和密码security:user:name: adminpassword: admin #fe…

Nginx详细介绍(并从技术层面深度剖析)

nginx介绍 1.nginx 介绍2.nginx的优势3.Nginx VS Apache3.1.内核、语言、诞生时间比较3.2.功能比较3.3.Nginx 相对 apache 的优点 4.Nginx为什么有这么多的优势&#xff1f;4.1.IO多路复用&#xff08;I/O multiplexing【多并发】&#xff09;4.2.nginx的驱动模型介绍4.3.nginx…

削峰填谷与应用间解耦:分布式消息中间件在分布式环境下并发流量控制的应用

这是《百图解码支付系统设计与实现》专栏系列文章中的第&#xff08;18&#xff09;篇&#xff0c;也是流量控制系列的第&#xff08;4&#xff09;篇。点击上方关注&#xff0c;深入了解支付系统的方方面面。 本篇重点讲清楚分布式消息中间件的特点&#xff0c;常见消息中间件…

MiniTab的相关性统计

相关概述 相关可以度量两个变量之间关联的强度和方向。可以在以下两种相关方法之间进行选择&#xff1a;Pearson 积矩相关和 Spearman 秩次相关。Pearson 相关&#xff08;又称为 r&#xff09;是最常见的方法&#xff0c;它度量两个连续变量之间的线性关系。 如果变量之间的…

通讯录项目的实现以及动态顺序表(基于顺序表)

首先我们要知道什么是顺序表: 顺序表的底层结构是数组,对数组的封装,实现了常⽤的增删改查等接⼝,顺序表分为静态顺序表(使⽤定⻓数组存储元素)和动态顺序表(按需申请) 静态顺序表缺点: 空间给少了不够⽤,给多了造成空间浪费 拿出来我之前以及写好了的顺序表的代码:…

SQL SERVER无法连接到服务器解决过程记录

很久没用sql server了&#xff0c;这几天打算更新SQL SERVER数据库&#xff1a;SQL看这一篇就看够了&#xff08;附详细代码及截图&#xff09; 这篇文章&#xff0c;发现连接不上服务器。 找一下解决办法。 一、打开服务界面 在键盘上按“WINR”快捷键&#xff0c;打开运行…