DNS域名解析服务

《DNS域名解析服务器》 1.概述 2.DNS域名解析过程 3.搭建DNS域名解析服务器 4.部署DNS从服务器 阅读详情

目录

一、DNS简介

1.1DNS名词介绍

1.2DNS系统的作用

 1.3DNS系统类型

1.4本地名称解析配置文件

 1.5DNS查询方式

1.6DNS正向解析查询原理过程

二、正向解析资源记录及配置实例

 2.1正向解析配置实例

 2.2反向解析配置实例

 2.3主从复制配置示例


一、DNS简介

1.1DNS名词介绍

    域名管理系统DNS(Domain Name System)是域名解析服务器的意思,应用层协议,是互联网的一项服务。它在互联网的作用是:把域名转换成网络可以识别的ip地址,在通过IP地址访问主机。 种由文字组成的名称,显而易见要更容易记忆。

     实际上,每一台 DNS 服务器都只负责管理一个有限范围(一个或几个域)内的主机域 名和 IP 地址的对应关系,这些特定的 DNS 域或 IP 地址段称为 zone(区域)。根据地址解析的方向不同,DNS 区域相应地分为正向区域(包含域名到 IP 地址的解析记录)和反向区 域(包含 IP 地址到域名的解析记录)。

1.2DNS系统的作用

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

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

  • IPv4的根名称服务器:全球共13个负责解析根域的DNS服务器,美国10个,英国1,瑞典1,日本1

    IPv6的根名称服务器:全球共25个,中国1主3从,美国1主2从

  • DNS系统的分布式数据结构:

 DNS查询类型及原理:

一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区):

二级DNS服务器:专门负责二级域名的解析:

 

 子域名DNS服务器:专门负责子域名的解析也称为三级域名:

主机站点:

 1.3DNS系统类型

缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但是没有自己控制的区域地址数据。构建缓存域名服务器时,必须设置根域或指定其他 DNS 服务器作为解析来源。

主域名服务器:管理和维护所负责解析的域内解析库的服务器

从域名服务器:从主服务器或从服务器"复制"(区域传输)解析库副本

序列号:解析库版本号,主服务器解析库变化时,其序列递增

刷新时间间隔:从服务器从主服务器请求同步解析的时间间隔

重试时间间隔:从服务器请求同步失败时,再次尝试时间间隔

过期时长:从服务器联系不到主服务器时,多久后停止服务

通知机制:主服务器解析库发生变化时,会主动通知从服务器

1.4本地名称解析配置文件

Linux: /etc/hosts

windows : c/windows/system32/drivers/etc/hosts

[root@localhost ~]#vim /etc/nsswitch.conf
#修改dns的优先级
hosts:      files dns myhostname
#修改 files和 dns的先后  优先级就不同。如果files在前面,那么file优先级就比较高

此时ping www.baidu.com 就是设置的地址 

 

 1.5DNS查询方式

递归查询:一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后, 若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结 果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)

迭代查询:一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对 方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起 进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需 要发起多次查询。(需要自己动手)


1.6DNS正向解析查询原理过程

①先查本机的缓存记录

②查询hosts文件

③查询dns域名服务器,交给dns域名服务器处理以上过程成为递归查询:我要一个答案你直接会给我结果

④这个dns服务器可能是本地域名服务器,也有个缓存,如果有直接返回结果,如果没有则进行下一步

⑤求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域服务器

⑥求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器然他去找二级域服务器

⑦求助二级域服务器,二级域服务器查询发现是我的主机,把查询到的ip地址返回给本地域名服务器

⑧本地域名服务器将结果记录到缓存,然后把域名和ip的对应关系返回给客户端

二、正向解析资源记录及配置实例

 2.1正向解析配置实例

1.安装bind软件包
yum install -y bind

2.配置正向解析
(1)先查看需要修改的配置文件所在路径
rpm -qc bind                       #查询bind软件配置文件所在路径
/etc/named.conf                    #主配置文件
/etc/named.rfc1912.zones        #区域配置文件
/var/named/named.localhost        #区域数据配置文件

(2)修改主配置文件
vim /etc/named.conf
options {
    listen-on port 53 { 192.168.80.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     { 192.168.80.0/24; 172.16.100.0/24; }; ●允许使用本DNS解析服务的网段,也可用any代表所有
    ……
}
    
zone "." IN {                        #正向解析“.”根区域
        type hint;                    #类型为根区域
        file "named.ca";            #区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};

include "/etc/named.rfc1912.zones";        #包含区域配置文件里的所有配置

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

(4)配置正向区域数据文件
cd /var/named/
cp -p named.localhost benet.com.zone    #保留源文件的权限和属主的属性复制
vim /var/named/benet.com.zone
$TTL 1D                                                        #有效解析记录的生存周期
@       IN SOA  benet.com. admin.benet.com. (                #“@”符号表示当前的DNS区域名 
                                        0       ; serial    #更新序列号,可以是 10 位以内的整数
                                        1D      ; refresh    #刷新时间,重新下载地址数据的间隔
                                        1H      ; retry        #重试延时,下载失败后的重试间隔
                                        1W      ; expire    #失效时间,超过该时间仍无法下载则放弃
                                        3H )    ; minimum    #无效解析记录的生存周期
                                        
        NS      benet.com.                                    #记录当前区域的DNS服务器的名称
        A        192.168.80.10                                #记录主机IP地址
IN     MX    10        mail.benet.com.                                #MX为邮件交换记录,数字越大优先级越低        
www  IN    A       192.168.80.10                                #记录正向解析www.benet.com对应的IP
mail IN    A        192.168.80.11
ftp     IN    CNAME    www                                            #CNAME使用别名,ftp是www的别名
*     IN    A        192.168.80.100                                #泛域名解析,“*”代表任意主机名
                        
#“@”这里是一个变量,当前DNS区域名
#SOA记录中的更新序列号用于同步主、从服务器的区域数据,当从服务器判断区域更新时,若发现主服务器中的序列号与本地区域数据中的序列号相同,则不会进行下载。
#“benet.com.”此为完全合格域名(FQDN),后面有个“.”不能漏掉
#“admin.benet.com.”表示管理员邮箱,这里的“@”符号已有其他含义,所以用“.”代替

(5)启动服务,关闭防火墙
systemctl start named
systemctl stop firewalld
setenforce 0    
#如果服务启动失败,可以查看日志文件来排查错误
tail -f /var/log/messages
#如果服务启动卡住,可以执行下面命令解决
rndc-confgen -r /dev/urandom -a

(6)在客户端的域名解析配置文件中添加DNS服务器地址
vi /etc/resolv.conf            #修改完后立即生效
nameserver 192.168.80.10
或
vi /etc/sysconfig/network-scripts/ifcfg-ens33        #修改完后需要重启网卡
DNS1=192.168.80.10

systemctl restart network

(7)测试DNS解析
host www.benet.com
nslookup www.benet.com
 

 2.2反向解析配置实例

1)修改区域配置文件,添加反向区域配置
vim /etc/named.rfc1912.zones                    #文件里有模版,可复制粘贴后修改
zone "159.168.192.in-addr.arpa" IN {                ●反向解析的地址倒过来写,代表解析192.168.159段的地址
        type master;
        file "benet.com.zone.local";            ●指定区域数据文件为benet.com.zone.local
        allow-update { none; };
};

(2)配置反向区域数据文件
cd /var/named/
cp -p named.localhost benet.com.zone.local
vim /var/named/benet.com.zone.local
$TTL 1D
@       IN SOA  benet.com. admin.benet.com. (                    #这里的“@”代表192.168.80段地址
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      benet.com.
        A       192.168.80.10
200 IN  PTR     www.benet.com.
100 IN  PTR     mail.benet.com.

#PTR为反向指针,反向解析192.168.159.200地址结果为www.benet.com.

(3)重启服务进行测试
systemctl restart named
host 192.168.159.200
nslookup 192.168.159.200

vim /etc/named.rfc1912.zones 

 

 

 2.3主从复制配置示例

(1)修改主域名服务器的区域配置文件,修改正、反向区域配置
vim /etc/named.rfc1912.zones
zone "benet.com" IN {
        type master;                                  ●类型为主区域
        file "benet.com.zone";
        allow-transfer { 192.168.159.20; };          ●允许从服务器下载正向区域数据,这里添从服务器的IP地址
};

zone "80.168.192.in-addr.arpa" IN {            
        type master;
        file "benet.com.zone.local";        
        allow-transfer { 192.168.159.20 };
};


(2)修改从域名服务器的主配置文件
yum install -y bind
vim /etc/named.conf
options {
    listen-on port 53 { 192.168.159.20; };    ●监听53端口,ip地址使用提供服务的本地IP即可,也可用any代表所有
#    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; };                 ●允许使用本DNS解析服务的网段,也可用any代表所有
    ……
}

(3)修改从域名服务器区域配置文件,添加正、反区域配置
vim /etc/named.rfc1912.zones
zone "benet.com" IN {
        ty                          ●类型为从区域
        masters { 192.168.159.10; };            ●指定主服务器的IP地址
        file "slaves/benet.com.zone";       ●下载的区域数据文件保存到slaves/目录下
};

 

zone "159.168.192.in-addr.arpa" IN {    
        type slave;
        masters { 192.168.159.10; };
        file "slaves/benet.com.zone.local";
};

(4)主、从都重启动服务,并查看区域数据文件是否已下载成功
systemctl restart named
ls -l /var/named/slaves/

(5)在客户端的域名解析配置文件中添加从DNS服务器地址
echo "nameserver 192.168.159.20" >> /etc/resolv.conf

(6)测试
host 192.168.159.200
nslookup 192.168.159.200

#停止主服务器的服务,模拟主服务器故障
systemctl stop named
host 192.168.159.200
nslookup 192.168.159.200

 ​​​​​​​

 

 

 

 

 

 

 

 

 

 

Linux中DNS域名解析服务 阅读详情

相关推荐

01-DNS域名解析服务

DNS域名解析服务 DNS域名解析服务 DNS服务 DNS的实现原理 实战项目1:在企业内部搭建一台域名解析服务器DNS正反解析 实战项目2:在企业内部搭建两台域名解析服务器做DNS主辅同步 排错记录 配置文件详细解析 - 总结 课程要求 1. 在企业内部搭建一台域名解析服务器DNS正反解析 2. 在企业内部搭建两台域名解析服务器做DNS主辅同步 DNS服务全称是domai

AKILLII的博客 1967

DNS域名解析服务器

DNS(Domain Name System)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分 布式数据库,能够使人更方便的访问互联网。DNS使用的是53端口通常DNS是以UDP这个较快速的数据传输协议来查询的,但是没有查询到完整的信息时,就会再次 以TCP这个协议来重新查询所以启动DNS时,会同时启动TCP以及UDP的port53。

2301_78668665的博客 1112

Linux的DNS域名解析服务

Linux的DNS域名解析服务

m0_71521555的博客 2306

Linux配置DNS域名解析服务(Linux配置DNS域名解析服务)

在日常生活中人们习惯使用域名访问服务器,但机器间互相只认IP地址,域名与IP地址之间是多对一的关系,一个ip地址不一定只对应一个域名,且一个完整域名只可以对应一个ip地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。DNS是“域名系统”的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。

Y0UZI的博客 5730

DNS侦察DNS目标识别技术-渗透测试察打一体(3)

它会查询DNS服务器。早期的DNS攻击会从授权DNS服务器上传送一个区域文件(Zone File),这样透测试人员就可以查看完整的区域文件内容来找出可能的目标。Fierce的设计初衷就是侦察工具,这样有了IP地址,你就可以使用那些需要用到IP地址的工具了,比如Nmap。Fierce是一款IP、域名互查的DNS工具,可进行域传送漏洞检测、字典爆破子域名、反查IP段、反查指定域名上下一段IP,属于一款半轻量级的。使用Fierce个重要的原因是选定目标时只用很少的网络流量,这样的好处是避免被发现。

AI 414

《从0到1:CTFer成长之路》书籍配套题目-[第二章 web进阶]文件上传

[第二章 web进阶]文件上传开始行动绕过第1个限制绕过第2个限制 介绍:记录一下笔记,方便以后迅速回忆使用。 《从0到1:CTFer成长之路》书籍配套题目,来源网站:《从0到1:CTFer成长之路》 先看一下题目源码: <?php header("Content-Type:text/html; charset=utf-8"); // 每5分钟会清除一次目录下上传的文件 require_once('pclzip.lib.php'); if(!$_FILES){ echo '

weixin_46703850的博客 3412

DNS 域名解析服务详解

在互联网世界里,域名解析是我们每天都在使用却常常被忽视的关键环节。当你在浏览器中输入,背后就是在默默工作。本文将带你深入了解 DNS 的原理、结构以及部署实践。DNS(域名系统)是互联网的“导航员”,它的作用是将域名与 IP 地址相互映射。

kirito0000的博客 1357

ubuntu18.04安装R——无法连接上 dl.google.com:80 (6.6.6.6),连接超时&&E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

安装R的时候,sudo apt update 的时候出现错误: 查资料要修改/etc/apt/sources.list.d/google-chrome.list 文件 原来是: deb http://dl.google.com/linux/chrome/deb/ stable main 改为: deb [arch=amd64] http://dl.google.com/linux/chrom...

许希律的博客 4354

DNS—域名解析服务及配置

快速学会DNS缓存服务器及主,从DNS服务器的配置

kang_01的博客 2192

从建模到调参:基于Simulink的两轮差速机器人轨迹跟踪PID控制全流程解析

本文详细解析了基于Simulink的两轮差速机器人轨迹跟踪PID控制全流程。从运动学建模入手,对比了基于距离与基于位置偏差的两种控制策略,并重点阐述了高精度轨迹跟踪的控制器设计、Simulink仿真搭建及PID参数整定方法,为移动机器人运动控制提供了完整的仿真实践指南。

weixin_29169505的博客 314

手把手教你设计反激开关电源:从整流滤波到PCB布局的实战避坑指南

本文是一份反激开关电源的实战设计指南,重点解析了从整流滤波电路到PCB布局的关键细节与常见陷阱。文章深入探讨了输入保护元件协同设计、EMI滤波器优化、整流桥与滤波电容选型,并详细阐述了如何通过优化PCB布局来确保安规、最小化功率回路面积以控制噪声,旨在帮助工程师和爱好者规避设计误区,提升电源的可靠性与性能。

yhn45678901的博客 692
上一篇: Linux网络配置
下一篇: Linux网络DHCP(动态主机配置协议)
Au杨
博客等级 码龄6年 37粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值