【DNS域名解析服务】

news2024/12/27 12:39:41

目录

  • 一、DNS系统的作用
  • DNS的介绍
    • 1.1、通用的顶级域名
  • 二、DNS域名解析(==面试题==)
  • 三、DNS查询方式
    • 递归查询
    • 迭代查询
  • 四、构建DNS域名服务器步骤
    • 4.1、安装bind软件包
    • 4.2、修改配置文件
    • 4.3、域名的配置
      • 修改区域配置文件,添加正向区域配置
    • 4.4、覆盖文件
  • 五、DNS反向查询
    • 5.1、修改反向配置文件
    • 设置var里面的配置文件
  • 六、设置从域名服务器配置
  • 七、设置DHCP和bind一起的配置
    • 7.1、配置主域名服务器
    • 7.2、配置备用域名服务器
    • 7.3、设置dhcp


一、DNS系统的作用

正向解析:根据域名查找对应的IP地址

反向解析:根据IP地址查找到对应的域名

DNS系统的分布式数据结构

DNS的介绍

当 Windows 系统用户使用 nslookup hostname/domainname 命令时,DNS 会自动查找注册了主机名和 IP 地址的数据库,并返回对应的 IP 地址。

在这里插入图片描述

1.1、通用的顶级域名

在这里插入图片描述

以下是一个网站域名的字段介绍
在这里插入图片描述

二级域名下面是三级域名、四级域名等。命名树上任何一个节点的域名就是从这个节点到最高层的域名串起来,中间以 “ . ” 分隔。
在这里插入图片描述

二、DNS域名解析(面试题

在这里插入图片描述

DNS 客户端进行域名 www.tsinghua.edu.cn 的解析过程如下:

   1、 DNS 客户端向本地域名服务器发送请求,查询 www.tsinghua.edu.cn 主机的 IP 地址;

   2、 本地域名服务器查询数据库,发现没有域名为 www.tsinghua.edu.cn 的主机,于是将请求发送给根域名服务器;

   3、根域名服务器查询数据库,发现没有这个主机域名记录,但是根域名服务器知道 cn 域名服务器可以解析这个域名,于是将 cn 域名服务器的 IP 地址返回给本地域名服务器;

   4、 本地域名服务器向 cn 域名服务器查询 www.tsinghua.edu.cn 主机的 IP 地址;

   5、 cn 域名服务器查询数据库,也没有相关记录,但是知道 edu.cn 域名服务器可以解析这个域名,于是将 edu.cn 域名服务器的 IP 地址返回给本地域名服务器;

   6、 本地域名服务器再向 edu.cn 域名服务器查询 www.tsinghua.edu.cn 主机 IP 地址;

  7、  edu.cn 域名服务器查询数据库,也没有相关记录,但是知道 tsinghua.edu.cn 域名服务器可以解析这个域名,于是将 tsinghua.edu.cn 的域名服务器 IP 地址返回给本地域名服务器;

   8、 本地域名服务器向 tsinghua.edu.cn 域名服务器查询 www.tsinghua.edu.cn 主机的 IP 地址;

   9、 tsinghua.edu.cn 域名服务器查询数据库,发现有主机域名记录,于是给本地域名服务器返回 www.tsinghua.edu.cn 对应的 IP 地址;

   10、 最后本地域名服务器将 www.tsinghua.edu.cn 的 IP 地址返回给客户端,整个解析过程完成

三、DNS查询方式

DNS 域名解析包括两种查询方式,一种是递归查询,另一种是迭代查询。

递归查询

DNS 服务器如果不能直接响应解析请求,它将继续请求其它的 DNS 服务器,直到查询域名解析的结果。查询的结果可以是域名主机的 IP 地址,或者是域名无法解析。无论哪种结果,DNS 服务器都会将结果返回给客户端。

在这里插入图片描述

迭代查询

如果 DNS 服务器查不到相应记录,会向客户端返回一个可能知道结果的域名服务器 IP 地址,由客户端继续向新的服务器发送查询请求。对域名服务器的迭代查询,只得到一个提示,则继续查询。
在这里插入图片描述

四、构建DNS域名服务器步骤

4.1、安装bind软件包

yum install -y bind

4.2、修改配置文件

rpm -qc bind    查询bind软件配置文件所在路径
/etc/named.conf   主配置文件
/etc/named.rfc1912.zones     区域配置文件
 /var/named/named.localhost      区域数据配置文件

在这里插入图片描述

进入修改配置文件

vim /etc/named.conf

修改为本地的IP地址
在这里插入图片描述

options {
listen-on port 53 { 192.168.102.10;  
;·监听53端口,ip地址使用提供服务的本地IP,也可用any表示所有

listen-on-v6 port 53 { ::1; };   
#ipv6行如不使用可以注释掉或者删除

 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";
 内存统计文件的位置
 
 allow-query     { any; };
 允许使用本DNS解析服务的网段,也可用any代表所有

4.3、域名的配置

请添加图片描述

修改区域配置文件,添加正向区域配置

vim /etc/named.rfc1912 .zones      文件里有模版,可复制粘贴后修改
zone "dznb.com" IN {              正向解析“dznb.com”区域
        type master;              类型为主区域
        file "dznb.com.zone";     指定区域数据文件为dznb.com.zone
        allow-update { none; };
};

4.4、覆盖文件

在这里插入图片描述

vim dznb.com.zone  设置

在这里插入图片描述

STTL 1D         有效解析记录的生存周期
@      IN SOA   dznb.com.  admin.dznb.com. (    “@"符号表示当前的DNS区域名
                    20230419    ;serial  更新序列号,可以是 10 位以内的整数
                    1D   ; refresh  刷新时间,重新下载地址数据的间隔
                    1H   ; retry  重试延时,下载失败后的重试间隔
                    1W   ; expire  失效时间,超过该时时间仍无法下载则放弃
                    3H ) ;minimum   无效解析记录的生存周期
                     
   NS        dznb.com.          记录当前区域的DNS服务器的名称
   A        192.168.102.10      记录主机IP地址
www   IN A  192.168.10.30     记录正向解析www.benet.com对应的IP
NEWS  IN A  192.168.102.40 
host   IN  CNAME    www   CNAME使用别名,ftp是www的别名
~   IN A    192.168.102.50   泛域名解析,“*"代表任意主机名               
                   
设置号后关闭防火墙
systemctl start named    单个网卡重新启动 
systemctl restart network 网卡全部重新启动
netstat -lntup | grep :53
使用此命令看看显不显示53 ,显示的话就是启动了监听,不显示就说明没有启动

在这里插入图片描述

使用
vim /etc/resolv.conf    进入修改IP地址,不需要重启网卡设置

nslookup 域名    来查看配置成功没

在这里插入图片描述

五、DNS反向查询

在 DNS 查询中,客户端希望知道域名对应的 IP 地址,这种查询称为正向查询。大部分的 DNS 查询都是正向查询。与正向查询对应的,是反向查询。它允许 DNS 客户端通过 IP 地址查找对应的域名。
在这里插入图片描述

5.1、修改反向配置文件

vim /etc/named.rfc1912.zones
进入修改反向解析文件

在这里插入图片描述

cp -p named.localhost dznb.com.zone.local
覆盖相同类型的文件

在这里插入图片描述

设置var里面的配置文件

vim dznb.com.zone.local 
进入配置文件

在这里插入图片描述

使用nslookup  IP地址,可以查看成功没有

在这里插入图片描述

六、设置从域名服务器配置

设置新的Linux主机

systemctl stop firewalld
setenforce 0
关闭防火墙和安全

在这里插入图片描述

挂载和安装软件

在这里插入图片描述

vim /etc/named.conf
设置配置文件的IP地址

在这里插入图片描述

设置从服务器时,要先去主服务器里设置一下同意设置


allow-transfer { 192.168.102.2; };
反向和正向都要设置同意从服务器进入

在这里插入图片描述

systemctl restart named
设置完重启网卡
进入修改正反解析配置
把master改为slave 变成从的配置
masters { 192.168.102.10};
意思是把主的IP地址允许访问

在这里插入图片描述

文件已经复制到slaves里

在这里插入图片描述
设置一个新Linux主机

vim /etc/resolv.conf
在里面添加主和备的IP地址

在这里插入图片描述

这样新主机就可以查找到对应的

在这里插入图片描述
从主的主机里把配置关了,新主机解析的话就是用备的配置来进行查找
在这里插入图片描述
字号4

如果解析不了地址,根目录就会给你解析

在这里插入图片描述
使用Windows系统来验证一下主和备,
如果把主的服务器关了,Windows会一直解析下去

在这里插入图片描述

vim /etc/resolv.conf
进入修改文件,加入一个search

在这里插入图片描述
加入search后就可以自动解析域名
在这里插入图片描述

七、设置DHCP和bind一起的配置

systemctl stop firewalld
setenforce 0
关闭防火墙
mount /dev/sr0 /mnt   进行挂载
yum install -y bind dhcp   安装相关的软件

在这里插入图片描述

7.1、配置主域名服务器

##########从服务器##########
vim /etc/named.conf
 
options {
        listen-on port 53 { any; };       使用any 也可为192.168.102.10(本机)
        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";
        allow-query     { any; };         使用any 也可为192.168.102.10(本机)

在这里插入图片描述

vim /etc/named.rfc1912.zones
设置正反配置文件,里面使用的IP地址为备的IP地址

在这里插入图片描述

cd /var/named/   进入这个配置文件里
使用
cp -p named.localhost dznb.com.zone
cp -p named.localhost dznb.com.zone.local
进行覆盖相同的文件

在这里插入图片描述

systemctl restart named   重启网卡
如果出现报错就
journalctl -r -u named
vim /var/log/messages 查看内核文件日志找错
vim /etc/resolv.conf  进入修改主服务器的IP地址
nslookup www.dznb.com
nslookup 192.168.102.10
测试一下查看配置完成没有

在这里插入图片描述

7.2、配置备用域名服务器

vim /etc/named.rfc1912.zones
进入设置备用的配置文件

在这里插入图片描述
进入slaves里查看,可以看见文件已经在里面了,说明写入成功
在这里插入图片描述

7.3、设置dhcp

使用主服务器
vim /etc/dhcp/dhcpd.conf
进入dhcp的配置文件,如图所示叫你去以下目录里的文件里查找

在这里插入图片描述

cd /usr/share/doc/dhcp-4.2.5/
进入dhcp文件里

\cp -f dhcpd.conf.example /etc/dhcp/dhcpd.conf
从这个文件里继续复制到dhcpd.conf里

在这里插入图片描述

进入后把这两个命令条禁用掉,暂时不要用,把租期时间弄长一些
在这里插入图片描述
设置IP地址和网关,子网掩码,设置完后保存退出
在这里插入图片描述

systemctl start dhcpd
重启网卡,没有报错就是设置完毕,出现报错就可以查看日志来找出问题

全都设置好后可以在Windows主机上看看有没有传输到
在这里插入图片描述
在这里插入图片描述

cd /etc/sysconfig/network-scripts/  进入设置网卡界面
ls   查看
vim ifcfg-ens33   进入网卡设置

在新的Linux主机里设置新的网卡设置
在这里插入图片描述

设置完后输入
vim /etc/resolv.conf  命令
就会发现系统给你自动补全解析的IP地址

search 是可以让你自动补全主机名的命令

在这里插入图片描述

使用nslookup www
会自动补全后面的主机名

在这里插入图片描述

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

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

相关文章

Canokey Pigeon的初级玩法

Canokey Pigeon的初级玩法 前言开箱使用控制台新版旧版 初步设置FIDO2 PIN更改重置 坑(或者说不满意的地方)玩法FIDO2/U2FOpenPGPPIVNDEFOATH 参考 本文转载于我的博客Canokey Pigeon的初级玩法 Canokey Pigeon今天终于到货了 {% note warning flat %} …

【C++缺省参数、函数重载详解】

目录 一、缺省参数1.1缺省参数的定义1.2缺省参数的分类1.3缺省参数使用时的注意事项 二、函数重载2.1函数重载的概念2.2为什么要有函数重载2.3 C支持函数重载的原理 一、缺省参数 1.1缺省参数的定义 缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时&a…

搭建B2B2C多用户国际版商城系统,快速为外贸企业开拓新市场

企业市场竞争激烈,不只体现在国内,甚至全球,电商行业发展迅速,各企业各行业甚至进出口都竞争相当激烈。要想在这种告诉竞争中脱颖而出,开拓新市场,带来新盈利与新契机是必不可少的。易族智汇Javashop助力企…

nmap学习笔记

一、环境准备 Windows10主机Kali虚拟机(使用nmap的地方)metasploitable虚拟机为以上三个操作系统配置静态IP。 Windows主机的IP:192.168.80.3Kali的IP:192.168.80.2metasploitable的IP:192.168.80.4 具体配置方法请参…

STM32-窗口看门狗WWDG实验

窗口看门狗本质上是一个能产生系统复位信号和提前唤醒中断的定时器。它通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,否则看门狗电路在达到预置的时间周期时…

代码随想录二刷-队列及其应用题目(JS)【重要】

239.滑动窗口最大值 题目 给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 进阶: 你能在线性时间复杂度内解决此题吗…

Thinkpad-t470电脑 Hackintosh 黑苹果efi引导文件

原文来源于黑果魏叔官网,转载需注明出处。(下载请直接百度黑果魏叔) 硬件型号驱动情况 主板Thinkpad-t470 处理器Intel Core i7-6600U 2.6GHz / 3.4Ghz Turbo已驱动 内存16GB DDR4 2666Mhz (SK Hynix)已驱动 硬盘Intel SSD Pro 7600P 51…

与Linux的文件权限有关的知识

在Linux系统中,每个文件都有一个所有者和一个用户组。此外,系统还定义了一个“其他人”分类。 文件的所有者通常是创建该文件的用户,而用户组则是在创建该文件时指定的。如果没有指定,则默认为创建用户的主用户组。用户组可以在文…

核心业务1:账户绑定业务

核心业务1:账户绑定业务 1.业务流程图 2.账户绑定数据库设计 3.账户绑定业务流程 4.代码逻辑 5.代码逻辑细节 核心业务1:账户绑定业务 1.业务流程图 ①用户绑定数据到商户平台(已

C++map/set与unordered系列的区别

文章目录 map/set与unordered系列的区别map/set与unordered系列的性能对比测试总结 map/set与unordered系列的区别 1: map/set遍历时是有序的,unordered_map/unordered_set遍历时是无序的. 以set和unordered_set容器为例: 2: map/set是双向迭代器,底层数据结构为红黑树,unor…

重磅 | Shifu物联网开发框架成为CNCF认证项目

近日,边无际Shifu项目被收录进CNCF云原生全景图,成为了云原生计算基金会认证的项目之一。此次收录证明了Shifu具备了符合CNCF标准的技术能力和良好的社区发展,展现了Shifu在云原生计算领域的实力和可信度,巩固了Shifu在云原生领域…

J2EE,Java EE,Jakarta EE 命名之间的恩恩怨怨

介绍 简单来说,上面所有的名字指的都是一个东西 Java Platform, Enterprise Edition 上面的几个名词都是下面的内容的简写: J2EE(Java 2 Platform, Enterprise Edition)Java EE (Java Platform, Enterprise Edition)Jakarta EE(Jakarta Enterprise Edi…

learn_C_deep_1 (C程序补充知识、变量的声明和定义、声明和定义的区别)

目录 C程序补充知识 变量的声明和定义 1.什么是变量? 2.变量的本质是什么? - 所有的变量都要在内存的某个位置开辟空间 3.变量的定义和声明形式、初始化和赋值的区别 4.为什么要定义变量 声明和定义的区别 C程序补充知识 先让我们来看一段C语言…

史上最严宝宝口粮新国标出台,DHA和维生素D可能无需额外补充了

自2023年2月22日起,我国婴幼儿配方食品(以下简称配方奶)新国标开始实施。这意味着2023年2月22日以后在中国上架销售的配方奶必须符合新国标,重新取得国家市场监督管理总局食品评审中心(CFE-SAMR)的注册。这…

【单片机】基于Arduino cli和VS Code配置开发环境,彻底抛弃Arduino IDE

文章目录 0 前言1 VS Code的优势和Arduino IDE的劣势2 前期准备3 Arduino cli3.1 Arduino cli是什么3.2 下载与安装3.3 基本使用3.4 开发环境配置 4 VS Code配置5 参考链接 0 前言 之前有在电脑上基于VS Code配置Arduino环境,大致方法就是在安装Arduino IDE的前提下…

SCT2650STER,可以实现低成本升降压

市面上主流的中高压升降压拓扑方案有四开关管升降压控制芯片、SEPIC/反激控制芯片等。实际上四开关管升降压芯片成本很高,而SEPIC/反激控制芯片设计复杂。 如果仅需要升降压功能,功率较小,不需要隔离时,本篇解决方案将以SCT2650为…

真题详解(地址索引)-软件设计(五十一)

真题详解(单元测试)-软件设计(五十)https://blog.csdn.net/ke1ying/article/details/130189173?spm1001.2014.3001.5501 指令寻址方式 有四种,直接寻址,寄存器寻址,隐含寻址,立即寻址。 按寻…

基于高斯两步移动搜寻法(2SFCA)的城市绿地可达性分析

【2SFCA的基本思路,可以略过】 对每个供给点j,搜索所有在j搜寻半径(d0)范围内的需求点(k),计算供需比Rj;对每个需求点i,搜索所有在i搜寻半径(d0)范围内的供给点(j),将所有的供需比Rj加总得到i点的可达性Ai。 【数据】 成都市城区绿地数据、各街道小区数据、路网…

基于Rush.js的Monorepo实战

基于Rush.js的Monorepo入门实战 概述 Monorepo是一种软件开发模式,它将多个项目或组件存储在同一个代码库中,而不是将它们分散到多个库中。这样做可以方便跨项目的代码重用、版本控制、依赖管理等,被广泛应用于大型软件公司的开发流程中。 …

动力节点Vue3笔记——Vue程序初体验

目录 一、Vue程序初体验 1.1 下载并安装vue.js 1.2 第一个Vue程序 1.3 Vue的data配置项 1.4 Vue的template配置项 一、Vue程序初体验 可以先不去了解Vue框架的发展历史、Vue框架有什么特点、Vue是谁开发的,对我们编写Vue程序起不到太大的作用,…