windows server 2019 -DNS服务器搭建

前面是有关DNS的相关理论知识,懂了的可以直接跳到第五点。

说明一下:作为服务器ip最好固定下来,以DNS服务器为例子,如果客户机的填写DNS信息的之后,服务器的ip如果变动了的话,客户机都得跟着改,学过DHCP服务器的宝子都应该知道,不知道的宝子看我栏目的DHCP服务器博文,可以通过DHCP预留ip给指定服务器,此种方式在客户端是动态获取的,而且每次都会获取同一个ip,比较灵活。另一种是自己静态配置,如果客户机固定不动,静态配也行,但是如果客户机还会移动到别的网络环境下,那又得改ip比较麻烦。大家根据实际情况自行选择。

一、DNS

        域名解析服务器,国际比较通用的域名解析服务器有8.8.8.8 114.114.114.114。当然大型公司也有自己的域名解析服务器。域名解析服务器是将用户访问的域名找到其对应的服务器IP,然后将ip发送给用户。DNS服务是53端口号。

        域名解析查询的步骤:

                客户机:DNS缓存-本地host文件-本地服务器。

                服务器:DNS高速缓存--本地区域解析文件--转发器--根

二、域名概述

        如"www.qq.com"是一个完全限定域名(主机名.域名 )全球唯一,一般是我们嘴里的域名,但是严格来说,"qq.com"才被称为域名(全球唯一),而"www"是主机名。
        一个域名下可以有多个主机,域名全球唯一,那么"主机名.域名"肯定也是全球唯一的。
以"qq.com"域名为例,去网上查询一下我们能够看到有:

        1. http://www.qq.com:腾讯公司的官方网站;

        2. http://mail.qq.com:腾讯公司的邮箱服务;

        3. http://qzone.qq.com:腾讯公司的社交网络服;

        4. http://3g.qq.com:腾讯公司的3G网络服务。

        我们可以看到主机名有www/mail/qzone/3g,这些主机名是根据服务提供的服务来命名的。假设我有一台服务器(IP地址是 183.183.10.10)提供邮箱服务,我申请了一个域名叫fafa.com 那么我这台提供邮箱服务的机器的主机名就设置为mail,那么我的完全限定域名就叫做:mail.fafa.com。

        由此可见,我们的一个域名可以拥有多个完全限定域名。

三、域名的组成:

........四级域名,三级域名,二级域名,顶级域名,.根域名(一般不显示,www.qq.com.),越靠近(.根)域名的域名越值钱,越是后面的域名越不值钱。

如:www.baidu.com.
.为根域
com为顶级域(还有其他顶级域名:net,org,edu,gov,mil等)
baidu为二级域名
www为三级域名(主机名)

四、DNS服务器解析域名的过程

第一种是权威应答(递归查询)

        就是你的请求发送给指定的DNS服务器,而该服务正好能够解析出你请求域名的ip,就直接将域名解析的ip信息发给你,那么这就是权威应答。

此图中:

客户机向B服务器发送域名解析请求,B服务器查到了信息就直接发给了用户。

第二种是非权威应答(迭代查询)

        指定的服务器无法解析出你发送的域名请求时,最后经过一些列的操作得到的信息就是非权威应答。

此图中:

客户机想解析www.sohu.com时,信息发送给13.2.1.2这个域名解析服务器B,因为B只负责net的域名,com的域名解析不了,就找根(注意:不论谁,解析不了都找是直接找根,每一台DNS服务器都存有根服务的ip)。

根收到请求后,会从后开始查,一般只负责顶级域名的服务器,查询到com是42.6.1.8服务器C负责的,就把这个消息(服务器C的ip)发送给B,

B收到后就给服务器C发送请求, C收到后解析发现sohu不是自己管的,但是知道sohu是谁负责,就将管sohu的服务器E的ip发送给给B,

B再给E发送请求。 E找到域名对应的IP后会发给B,然后 B会缓存这个信息 并把这个信息发给客户机,此时就是非权威应答。

客户机也会缓存,客户机缓存还未清除的时候,再次访问sohu就不会再次解析了。

一般公司里面如果建立一台本地的域名解析服务器的话,最好是使用域名转发,让其他DNS域名解析器帮助解析,减轻本地域名解析服务的负担。当然如果不做域名转发的话,本地DNS解析器也是能通过上图,先找根,然后层层迭代,最终找到域名对应的ip的。

五、搭建DNS服务器

实验条件:windows server2019服务器+win 10客户机(均是虚拟机)

1,可以固定服务器的ip,也可以不固定。如果过动态分配IP的话,当前租的ip过期后,下次获取的可能不是同一个ip,这个静态ip可以用你现在服务器所在的ip,用ipconfig查询到的IP,填入下面即可固定。

2,安装DNS服务

打开服务器管理器--添加角色和功能--后面三步直接下一步

选择DNS服务器--添加功能--下一步 

安装完成

        此时的服务器是缓存服务器,前面第二个案例图提到过,DNS会做缓存,这样能提高我们上网的速度,具体解析的服务可以用域名转发的方式让别的服务器去做解析,这样又轻松又高效。

六、模拟客户机使用本地DNS服务器

        前提准备:服务器已经安装好了DNS服务,客户机和服务器在同一网段,这里两台服务器我选择的联网模式都是NAT,(如果不选择NAT,或者桥接的话-其实也就是无法连接外网的话,那么我们的DNS服务器就在解析不出域名的情况下,就不能访问到根,但是这不影响我们的此次实验,实验的目的是要完成客户机像DNS服务器发送域名解析的请求,并将结果返回给客户机,解析不出来也是一个结果。)

        1、DNS服务器新建一个区域

        这里创建的内容就是自己玩玩,也就是说在公司搭建的本地DNS服务器目的就是为了公司员工使用的,如果你离开了公司,就不一定能访问得到某域名了。

        2、客户机手动添加本地DNS服务器ip,

        现实工作中,会有DHCP服务器到时候就在DHCP服务里面取设置DNS的ip即可。

        3、测试(以下方式都可)

        相关命令:

ipconfig /flushdns 清除DNS缓存
ipconfig /displaydns 查看DNS缓存

        1)在客户机上测试使用ping命令:ping命令是要先解析域名,再发送请求包,因此可以检测域名解析服务器是否生效。前面我配的mail.qiqiu.com 对应的ip是私有ip,同时和我现在客户机不在同网段,因此是ping不通的。

客户机上已经有了这个mail.qiqiu.com的缓存记录

        2)在客户机上测试使用nslookup查询

        3)查看客户机和DNS服务器上的缓存

在客户机上ping qq.com

在客户机上ping baidu.com

前面说过,ping命令是要有域名解析这个过程的,因此能留下缓存。

七、模拟域名转发

        域名转发:前面提到过,就是自己解析不了的,给到指定的另一台域名解析服务器,因此这里我克隆了windows server 2019,作为另一台域名解析服务器(模拟互联网上的非本地的服务器),联网模式我这里选的是桥接。

1)添加第二台DNS服务器器

        在另一台(互联网)DNS服务器上新建正向查找区域,步骤和前面一样,这里我将区域名设定为baidu.com,主机名设为www

2)本地服务器添加转发指向

(对于本地服务器来说,就是说我解析不了,我让我指定的对象去解析--甩保留再说)

3)验证

客户机端输入nslookup查看和ping www.baidu.com

八、反向解析

        反向解析就是已知ip,获取域名的过程,在前面使用nslookup的时候,就存在这么一个过程,客户机在服务器在发送解析的内容之前,还会贱贱的发送了一个反向解析的请求,就是想知道解析域名的服务器的域名叫什么。就是下图黄色框标记出的一段内容,由于服务器没有配这个反向解析,所以就没做应答。

        反向解析对于安全来说是起到一定作用的,当一个ip给你发送数据,你请求反向解析能够验证该IP是不是你心目中的那个域名,如果不是就可能是别人冒充的。

接下来为DNS服务器配这个反向解析

1)为服务器创建域名

        给服务器一个域名dns01.zhuzhu.com,步骤和前面创建正向区域一样,只不过ip设置的时候要设置为服务器的ip。右击正向查找区域--新建区域--输入区域名称(zhuzhu.com)--默认下一步,完成;右击新建的区域--新建主机A如下图:

2)添加反向查找区域

右击反向查找区--域新建区域--下一步--主要区域(下一步)--下一步--输入网络ID--后面都是下一步--完成(此过程需要注意的地方已截图,其他都是下一步)

3)添加指向

右击前面新建的反向查找区域--新建指针--重要的已经截图,其他都是下一步

创建完成,此时使用nslookup 就会生效。

九、别名

CName是给域名取一个别名,取别名是为了方便客户能快速访问到自己。如图所示:

在本地DNS服务器的区域上新建别名

在客户机上验证:

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

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

相关文章

深入浅出Redis(九):Redis的发布订阅模式

引言 Redis是一款基于内存的键值对数据库,提供了多种数据结构存储数据,存取数据的速度还非常快,除了这些优点它还提供了其他特色功能,比如:管道、lua脚本、发布订阅模型 本篇文章主要描述发布订阅模型,将…

linux基础篇:Linux中磁盘的管理(分区、格式化、挂载)

Linux中磁盘的管理(分区、格式化、挂载) 一、认识磁盘 1.1 什么是磁盘 磁盘是一种计算机的外部存储器设备,由一个或多个覆盖有磁性材料的铝制或玻璃制的碟片组成,用来存储用户的信息,这种信息可以反复地被读取和改写…

Leetcode算法训练日记 | day22

一、二叉搜索树的最近公共祖先 1.题目 Leetcode:第 235 题 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足…

Python 发送邮件 (含代码)

通过Python代码来发送邮件。下面是步骤 先在某一个邮箱页面 开启 POP3/SMTP服务 获取授权码,这样免密码登录 授权码会用在代码里 获得 SMTP 服务器地址 代码 import smtplib from email.mime.text import MIMEText from email.utils import formataddr ms…

一例简单的文件夹病毒的分析

概述 这是一个典型的文件夹病毒,使用xp时代的文件夹图标,通过可移动存储介质传播,会向http://fionades.com/ABIUS/setup.exe下载恶意载荷执行。 其病毒母体只是一个加载器,会在内存是解密加载一个反射型的dll,主要的…

OOM三大场景和解决方案

目录 首先,说说什么是OOM? Java OOM的三大核心场景 场景一、堆内存OOM 类型一:在线OOM分析,这个属于轻量级的分析: 类型二:离线OOM分析,这个属于轻量级的分析: 场景二&#xf…

Ant Design Vue

Ant Design Vue是一个由阿里巴巴团队打造的Vue组件库,它以其优雅的设计和丰富的功能集成而被广泛使用。以下是对Ant Design Vue的简单介绍: 首先,Ant Design Vue采用了精良的设计风格,为用户提供了简约、美观的界面,符…

类和对象—初阶

目录 1.面向过程和面向对象初步认识 2.类的引入 3.类的定义 4.类的访问限定符及封装 4.1 访问限定符 【面试题】 4.2 封装 【面试题】 5.类的作用域 6.类的实例化 7.类对象模型 7.1 如何计算类对象的大小 7.2 类对象的存储方式 7.3 结构体内存对齐规则 【面试题】…

LMDoply部署实战

使用LMDeoply部署各类开源大模型,进行推理实践。 一. 环境准备 1. 创建Conda环境 studio-conda -t lmdeploy -o pytorch-2.1.2 2. 安装LMDeploy 激活刚刚创建的虚拟环境。 conda activate lmdeploy 安装0.3.0版本的lmdeploy。 pip install lmdeploy[all]0.3.…

Chrome谷歌下载入口

​hello,我是小索奇 发现好多人说谷歌浏览器在哪里下载呀,哪里可以找到? 你可能会心想,一个浏览器你还不会下载啊? 还真是,有很多伙伴找不到下载入口,为什么呢? Bing进行搜索&am…

4.进程相关 2

8.内存映射 8.1 内存映射相关定义 创建一个文件,将保存在磁盘中的文件映射到内存中,后期两个进程之间对内存中的数据进行操作,大大减少了访问磁盘的时间,也是一种最快的 IPC ,因为进程之间可以直接对内存进行存取 8.…

面试经典算法系列之双指针1 -- 合并两个有序数组

面试经典算法题1 – 合并两个有序数组 LeetCode.88 公众号:阿Q技术站 问题描述 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#…

【讲解下Fiddler的安装和使用】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

宠物救助系统|基于Springboot和vue的流浪猫狗救助救援系统设计与实现(源码+数据库+文档)

宠物救助目录 基于Springboot和vue的流浪猫狗救助救援系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、前台: 2、后台 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博主介绍:✌…

面试经典算法系列之链表2 -- 环形链表

面试经典算法8-环形链表 LeetCode.141 公众号:阿Q技术站 问题描述 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环&am…

【C++成长记】C++入门 |函数重载、引用、内联函数

🐌博主主页:🐌​倔强的大蜗牛🐌​ 📚专栏分类:C❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、函数重载 1、函数重载概念 二、引用 1、引用概念 2、引用特性 3、常引用 4、使用场景 5、…

数据库之DCL操作(用户、访问权限。)

DCL英文全称是Data control language(数据控制语言),用来管理数据库用户、控制数据库的访问权限。 1.管理用户 1.1查询用户 select * from mysql.user; 其中 Host代表当前用户访问的主机,如果为localhost,仅代表只能够在当前本机访问&…

深入浅出 -- 系统架构之微服务中OpenFeign最佳实践

前面我们讲了一下 Ribbon 和 RestTemplate 实现服务端通信的方法,Ribbon 提供了客户端负载均衡,而 RestTemplate 则对 http 进行封装,简化了发送请求的流程,两者互相配合,构建了服务间的高可用通信。 但在使用后也会发…

谁在投资“元素周期表”? 顶级芯片制造商“军备竞赛”

有色和商品基金的大买家何在 投资A股,有时候投资的也是一种“玄妙”的境界。 你需要复习金融知识、复习经济知识,复习科技知识,学习财政学、学习人口学、学习传染病学。 但这些可能还不够。 你能想象么有朝一日,你会回头复习中…

Flask项目如何在测试环境和生产环境部署上线

前言 最近在使用Flask框架,写一个小项目,在项目部署启动后,出现了以下这段提示,这段提示的意思是,该启动方式适用于开发环境中,生产环境要使用WSGI服务器。 WARNING: This is a development server. Do no…