【RHCE服务搭建实验】之DNS

news2024/9/26 3:23:34

目录

    • 一、DNS简介
    • 二、安装DNS

一、DNS简介

域名系统(DNS)是一个分层的分布式数据库。它存储用于将Internet主机名映射到IP地址(反之亦然)的信息、邮件路由信息以及Internet应用程序使用的其他数据。
客户端通过调用解析器库在DNS中查找信息,解析器库向一个或多个名称服务器发送查询并解释响应。BIND 9软件发行版包含一个名称服务器,named和一个名为liblwres的解析器库。
1、域名的系统结构
域名分为根域、顶级域、二级域、三级域和主机名这5类。
一般格式为“主机名.三级域.二级域.顶级域.”,后面这个点表示根域,在浏览器下不用输入。
在这里插入图片描述
2、域名服务器的分类

域名服务器可分为主域名服务器,辅助域名服务器,缓存域名服务器和转发服务器。

3、dns域名解析的过程
第一步:本地电脑会检查浏览器缓存中有没有这个域名对应的解析过的IP地址,如果缓存中有,这个解析过程就结束。
第二步:如果浏览器缓存中没有数据,浏览器会查找操作系统缓存中是否有这个域名对应的DNS解析结果,windows中可以通过配置C:\Windows\System32\drivers\etc\hosts文件来设置,Linux中可以通过/etc/hosts文件来设置。
第三步:前两个过程无法解析时,就要用到我们网络配置中的"DNS服务器地址"了。操作系统会把这个域名发送给这个本地DNS服务器。每个完整的内网通常都会配置本地DNS服务器,例如用户是在学校或工作单位接入互联网,那么用户的本地DNS服务器肯定在学校或工作单位里面。它们一般都会缓存域名解析结果,当然缓存时间是受到域名的失效时间控制的。大约80%的域名解析到这里就结束了,后续的DNS迭代和递归也是由本地DNS服务器负责。
第四步:如果本地DNS服务器仍然没有命中,就直接到根DNS服务器请求解析。
第五步: 根DNS服务器返回给本地DNS域名服务器一个顶级DNS服务器地址,它是国际顶级域名服务器,如.com、.cn、.org等
第六步:顶级域名服务器会返回一个二级域名服务器的地址,例如baidu。
第六步:二级域名找到了主机名的地址,就会返回给本地域名服务器,并且缓存下来。

递归和迭代查询的示意图:
在这里插入图片描述
在这里插入图片描述

4、资源记录
资源记录即添加到区域文件的记录,资源记录有许多类型,每一种类型的功能各不相同。
A 表示 Address,A记录就是地址记录,是域名到ipv4地址的映射信息。

AAAA也是地址记录,是域名到ipv6地址的映射信息。

PTR记录与A记录相反,是ip地址到域名的映射信息。

SOA记录意为起始7授权记录,用于声明DNS服务器是DNS域中数据表的信息来源,是主机的管理者。

NS记录是名称服务。用于记录表明区域权威DNS服务器,即在NS记录中指定的服务器会被其他服务器当作权威的来源,并能应答。

CNAME记录用于为特定FQDN创建别名,为多台主机提供相同的别名。

MX记录指向一个邮件服务器,用于指定邮件交换服务器。

二、安装DNS

[root@control ~]# dnf install bind bind-utils -y
配置文件解析

[root@kittod ~]# cat /etc/named.conf
options {
 /*
监听方式,服务监听指定ip的53号端口
服务器可能有多张网卡,any表示所有网卡监听53端口的DNS解析请求
 todo 可以个实验:1、ip指定为本机ip。2、ip指定为同网段随便的ip
 */
 listen-on port 53 { 127.0.0.1; any;}; /**/
 /*数据文件目录*/
 directory "/var/named";
 /*DNS缓存位置*/
 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";
 /*
 允许哪些client来查询dns服务,默认是localhost。
 any表示所有人都能进行dns查询
 */
 allow-query { localhost;any; };
 /*是否递归*/
 recursion yes;
  /*DNS安全扩展机制,默认开启,直接关闭即可*/
 dnssec-enable no;
 dnssec-validation no;
 /* Path to ISC DLV key */
 bindkeys-file "/etc/named.root.key";
 managed-keys-directory "/var/named/dynamic";
 pid-file "/run/named/named.pid";
 session-keyfile "/run/named/session.key";
};
logging {
 channel default_debug {
 file "data/named.run";
 severity dynamic;
 };
};
/*之所以全部DNS服务器都知道根域名服务器的位置,就是下面的配置在生效*/
zone "." IN {
 type hint;
 file "named.ca";
};
/*子配置文件*/
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

区域配置文件模板
cat /etc/named.rfc1912.zones

域类型的几种取值:

hint:若本地找不到相关解析,可查询根域名服务器
master:定义权威域名服务器
slave:定义辅助域名服务器
forward:定义转发域名服务器

dns正向解析实验
[root@control ~]# vim /etc/resolv.conf 可以设置dns

[root@control ~]# vim /etc/named.conf
listen-on port 53 { localhost; };     修改为本机ip地址
allow-query     { any; };           允许哪个主机可以过来查询,同时还可以帮你查询他不知道的域名
zone "xiaogang.com" IN{
        type master;
        file "named.xiaogang.com";     写一个区域文件
};
[root@control ~]# vim /var/named/named.xiaogang.com
可以cp -p 复制named.localhost这个文件的模板



$TTL 1D       域名解析记录在DNS服务器中的存留时间
@       IN SOA  ns1 admin.xiaogang.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns1
ns1       A       192.168.85.133
www     CNAME   webser
webser  A       192.168.85.134
webser  A       192.168.85.135    两个IP地址对应着这个主机,在一些大公司里可以分担流量
*       A       192.168.85.134     *号表示,你的主机名错误但还是给你解析成www的
@       A       192.168.85.134    @表示本机,比如xiaogang.com

例如:
[root@control ~]# host www.xiaogang.com
www.xiaogang.com is an alias for webser.xiaogang.com.
webser.xiaogang.com has address 192.168.85.135
webser.xiaogang.com has address 192.168.85.134

[root@control ~]# host wwwss.xiaogang.com
wwwss.xiaogang.com has address 192.168.85.134

[root@control ~]# host xiaogang.com
xiaogang.com has address 192.168.85.134

准备两台主机,第一台主机安装好dns服务器的软件。另一台不安装软件,把dns改为第一台的ip地址。

在第二台主机上测试
[root@manged ~]# host www.xiaogang.com
www.xiaogang.com is an alias for webser.xiaogang.com.
webser.xiaogang.com has address 192.168.85.134
webser.xiaogang.com has address 192.168.85.135
[root@manged ~]# host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 183.2.172.185
www.a.shifen.com has address 183.2.172.42
www.a.shifen.com has IPv6 address 240e:ff:e020:9ae:0:ff:b014:8e8b
www.a.shifen.com has IPv6 address 240e:ff:e020:966:0:ff:b042:f296
在本地域名服务器找不到解析时,本地域名服务器会充当转发服务器向根域进行递归和迭代查询

只做转发服务器实验

[root@kittod ~]# cat /etc/named.conf
options {
 listen-on port 53 { 192.168.226.130; };
 forward only;
 forwarders { 114.114.114.114; };
};
[root@kittod ~]# systemctl restart named

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

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

相关文章

股权众筹模式介绍(上)

众筹,是指个人或小企业通过互联网向大众筹集资金的一种项目融资方式,根据众筹的筹集目的和回报方式,可以分为债权众筹、回报众筹、股权众筹和捐赠众筹四大类。本文重点介绍我国股权众筹的几种模式。 一、众筹当事方 一个众筹项目&#xff0…

【ARMv8M Cortex-M33 系列 7 -- RA4M2 移植 RT-Thread 问题总结】

请阅读【嵌入式开发学习必备专栏 】 文章目录 问题小结栈未对齐 经过几天的调试,成功将rt-thead 移植到 RA4M2(Cortex-M33 核)上,thread 和 shell 命令已经都成功支持。 问题小结 在完成 rt-thread 代码 Makefile 编译系统搭建…

【LeetCode: 12. 整数转罗马数字 + 模拟 + 有序表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

WampServer

开发笔记 推荐链接php无法保存SESSION问题部署SSL时候产生的问题 推荐链接 链接目录 php无法保存SESSION问题 php.ini文件和phpForApache.ini 文件 里面都有 对路径的控制,相关路径问题可能也需要进行修改,打开文件搜索wamp64或wamp 就可以看到了&…

PowerShell install 一键部署grafana

grafana 前言 Grafana 是一款开源的数据可视化和监控仪表盘工具。它提供了丰富的数据查询、可视化和报警功能,可用于实时监控、数据分析和故障排除等领域。 通过 Grafana,您可以连接到各种不同的数据源,包括时序数据库(如 Prometheus、InfluxDB)和关系型数据库(如 MySQ…

透明拼接屏生产商:如何选择合格供应商

随着透明拼接屏市场的不断扩大,越来越多的生产商加入其中。对于需求方而言,选择一家合格的生产商至关重要。本文将围绕如何选择透明拼接屏生产商展开讨论,同时结合对尼伽OLED显示屏的了解,为您推荐这一领域的优质供应商。 一、透明…

springboot102基于web的音乐网站

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的基于web的音乐网站 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 …

网络防御保护1

网络防御保护 第一章 网络安全概述 网络安全(Cyber Security)是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断 随着数…

vue3前端开发,如何引入element-plus前端框架及配置参数

vue3前端开发,如何引入element-plus前端框架及配置参数!这是一个简单的教程,帮助大家快速在自己的项目中引入element-plus框架。 主要是介绍的引入流程和参数的配置情况。 如图,这个就是elment-plus前端框架里面的一个主按钮展示。表示我们配…

什么勒索攻击,应该如何防护?

当前,勒索攻击、僵尸网络攻击、DDos攻击、APT攻击、挖矿攻击、供应链攻击、网站攻击、电信诈骗等各种攻击手段层出不穷。 勒索攻击应该是今年网络安全行业讨论最多的话题,勒索钱财或者窃取商业数据是黑产最主要的目的。 勒索软件的攻击特征 与其它攻击行…

【 CSS 】基础1

“坚持就是胜利。” - 温斯顿丘吉尔 【 CSS 】基础 1 CSS 简介 CSS 是层叠样式表 ( Cascading Style Sheets ) 的简称.有时我们也会称之为 CSS 样式表或级联样式表。CSS 也是一种标记语言CSS 主要用于设置 HTML 页面中的文本内容(字体、大小、对齐方式等&#xff…

从零学Java - Stream API

Java - Stream API 文章目录 Java - Stream API什么是流(Stream)?Stream 的特点Stream使用步骤1 创建 Stream流2 中间操作3 终止操作 什么是流(Stream)? 流(Stream)与集合类似,但集合中保存的是数据,而Stream中保存对集合或数组…

什么是WAF

WAF是Web应用防火墙(Web Application Firewall)的简称,是一款通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的产品。 WAF主要用于防御Web应用攻击,例如SQL注入、跨站脚本攻击(XSS)、网页…

Win10/11中VMware Workstation设置网络桥接模式

文章目录 一、添加VMware Bridge Protocol服务二、配置桥接参数1.启用系统Device Install Service服务2.配置VMware 需要确认物理网卡是否有添加VMware Bridge Protocol服务 添加VMware Bridge Protocol服务 提示:以下是本篇文章正文内容,下面案例可供参…

代码随想录算法训练营DAY24|回溯1

算法训练DAY24|回溯1 第77题. 组合 力扣题目链接 给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。 示例: 输入: n 4, k 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 上面我们说了要解决 n为100,k为50的情况&#xff0…

Xcode查看APP文件目录

一、连接真机到MAC电脑上 二、打开Devices 点击window -> Devices and Simulatores 三、选中设备、选择app 四、选择下载内容 五、查看文件内容 得到的文件 右键显示包内容,获得APP内数据 六、分发证书无法下载 使用分发的证书无法下载文件内容&#xf…

Kui: 一个用于 Kubernetes 的“混合”CLI/GUI 应用程序

众所周知,当涉及到管理服务器或 Kubernetes 集群之类的事情时,我们大多数人更喜欢使用我们心爱的终端而不是 GUI 工具。对于许多人来说,这就像驾驶一辆带有手动变速箱的汽车:简单、舒适、灵活且更可预测。Kui 是一个混合界面工具&…

Servlet系列:生命周期(init、 service、destroy)详解

Servlet的生命周期是由Web容器(如Tomcat)管理的,包括以下三个阶段: 加载和实例化:当Web应用程序启动时,Web容器会加载和实例化Servlet。加载和实例化过程可以在应用程序启动时自动完成,也可以通…

python爬虫零基础学习之简单流程示例

文章目录 爬虫基础爬虫流程常用库爬虫示例Python技术资源分享1、Python所有方向的学习路线2、学习软件3、入门学习视频4、实战案例5、清华编程大佬出品《漫画看学Python》6、Python副业兼职与全职路线 爬虫基础 网络爬虫(Web Crawler),也称为…

HNU-数据挖掘-实验1-实验平台及环境安装

数据挖掘课程实验实验1 实验平台及环境安装 计科210X 甘晴void 202108010XXX 文章目录 数据挖掘课程实验<br>实验1 实验平台及环境安装实验背景实验目标实验步骤1.安装虚拟机和Linux平台&#xff0c;熟悉Ubuntu环境。2.在Linux平台上搭建Python平台&#xff0c;并安装…