DNS服务器搭建与正反解析配置

DNS服务介绍

DNS(Domain Name System–域名系统),是因特网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。是一个应用层的协议DNS使用TCP和UDP端口53。

DNS是一个分布式数据库,命名系统采用层次的逻辑结构,如同一颗倒置的树,这个逻辑的树形结构称为域名空间,由于DNS划分了域名空间,所以各机构可以使用自己的域名空间创建DNS信息.

注:DNS域名空间中,树的最大深度不得超过127层,树中每个节点最长可以存储63个字符.

Linux centos7.9 下DNS服务器安装

安装bind服务和启动步骤:

[root@localhost ~]# yum install -y bind*
#安装bind组件
[root@localhost ~]# systemctl start named
#启动dns服务
[root@localhost ~]# systemctl enable named
#设置dns服务开机启动

防火墙配置和selinux关闭

sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
firewall-cmd --zone=public --add-port=53/tcp --permanent
firewall-cmd --zone=public --add-port=953/tcp --permanent
firewall-cmd --zone=public --add-port=53/udp --permanent
firewall-cmd --zone=public --add-port=953/udp --permanent
firewall-cmd --reload

DNS配置的主要文件组:

/etc/hosts  主机的一个文件列表(强制解析)   添加记录如:111.13.100.92 www.baidu.com
对于简单的主机名解析(点分表示法),默认在请求DNS或NIS网络域名服务器前,/etc/named.conf 通常会告诉程序先查看此文件。

/etc/resolv.conf  DNS配置文件,在配置程序请求BIND域名查询服务查询主机名时,必须告诉程序使用哪个域名服务器和IP地址来完成这个任务

/etc/named.conf  BIND主文件,设置一般的name参数,指向该服务器使用的域数据库的信息源

/var/named/named.ca  根域名配置服务器指向文件,指向根域名配置服务器,用于告诉缓存服务器初始化

/var/named/localhost.zone  localhost区正向域名解析文件,用于将本地IP地址(127.0.0.1)转换为本地回送IP地址(127.0.0.1)

/var/named/name.local  localhost区反向域名解析文件,用于将localhost名字转换为本地回送IP地址(127.0.0.1)

/etc/named.rfc1912.zones  区块设置文件

DNS服务器配置实验,配置DNS正向解析:

第一步:修改主配置文件/etc/named.conf。将监听地址和运行查询的地址都改为 any,分别表示服务器上的所有IP地址均可提供DNS域名解析服务,以及允许所有人对本服务器发送DNS查询请求。

DNS服务器搭建与正反解析配置

第二步:修改区域配置文件(/etc/named.rfc1912.zones)。用来保存域名和IP地址对应关系的所在位置。在这个文件中,定义了域名与IP地址解析规则保存的文件位置以及服务类型等内容,而没有包含具体的域名、IP地址对应关系等信息。服务类型有三种,分别为hint(根区域)、master(主区域)、slave(辅助区域),其中常用的master和slave指的就是主服务器和从服务器。

zone "example.com" IN {
        type master;
        file "example.com.zone";
        allow-update { none; };
};

DNS默认端口是53的TCP和UPD,UDP是供用户查询的,主从复制用TCP和UDP的53端口都用。

BIND的ACL:bind有四个内置的acl:

   none: 没有一个主机

   any: 任意主机

   localhost: 本机

   localnet: 本机的IP同掩码运算后得到的网络地址段

   注意:只能先定义,后使用;因此一般定义在配置文件中, 处于options的前面,当然也可自定义如下

   acl lan{

​   192.168.25.0/24

   } ;

访问控制:

  访问控制的指令: allow-query {}: 允许查询的主机;白名单

           allow-transfer {}:允许区域传送的主机;(白名单,一般用于主从)

           allow-recursion {}: 允许递归的主机,建议全局使用

           allow-update {}: 允许更新区域数据库中的内容

第三步:编辑数据配置文件。从/var/named目录中复制一份正向解析的模板文件(named.localhost),然后把域名和IP地址的对应数据填写数据配置文件中并保存。在复制时记得加上-a参数,这可以保留原始文件的所有者、所属组、权限属性等信息,以便让bind服务程序顺利读取文件内容:

[root@localhost named]# cp -a named.localhost example.com
[root@localhost named]# vim example.com.zone 
$TTL 1D
@       IN SOA  @ example.com.   (
	 #授权信息开始:   #DNS区域的地址,在域地址后面还可以加管理员邮箱,不能加@,用.代替。
              20181001        ; serial  #更新序列号
                      1D      ; refresh #更新时间
                      1H      ; retry   #重试时间
                      1W      ; expire   #失效时间
                      3H )    ; minimum  #无效解析记录的缓存时间
        NS      ns.example.com.  #DNS区域的地址
ns      A       192.168.245.128  #地址记录
www     A       192.168.245.128  #www站点记录
mail    A       192.168.245.129  #地址记录
        MX 10   mail.example.com. #邮箱交换记录
example.com.    A 192.168.245.200
# 即使不写主机名,DNS也能解析到另外一个指定的地址
$GENERATE 1-245 server$ A 1.1.1.$
#如果服务器过多,对应主机名也很多,则可以这样写.例如:
#server1.example.com对应地址为:1.1.1.1
#server100.exmaple.com对应地址为:1.1.1.50
bbs     CNAME   www           #别名记录
*       A       192.168.245.128
#“*”代表所有,即便主机www写错,DNS也能正确解析出来。这就是泛域名解析
DNS服务器搭建与正反解析配置

第四步:检查配置,重启服务和测试

[root@localhost ~]# named-checkconf   #检查主配置文件语法
[root@localhost ~]# named-checkzone eample.com /var/named/example.com.zone 
#检查区域配置文件语法
/var/named/example.com.zone:13: ignoring out-of-zone data (example.com)
zone eample.com/IN: loaded serial 20181001
[root@localhost ~]# vi /etc/resolv.conf
#进入该配置文件,指定使用的域名解析服务器。
	# Generated by NetworkManager
	nameserver 192.168.245.128
	search 192.168.245.128
[root@localhost ~]# systemctl restart named  #重启服务

测试:

DNS服务器搭建与正反解析配置

配置DNS反向解析:

在DNS域名解析服务中,反向解析的作用是将用户提交的IP地址解析为对应的域名信息,它一般用于对某个IP地址上绑定的所有域名进行整体屏蔽,屏蔽由某些域名发送的垃圾邮件。它也可以针对某个IP地址进行反向解析,大致判断出有多少个网站运行在上面。当购买虚拟主机时,可以使用这一功能验证虚拟主机提供商是否有严重的超售问题。

第一步:配置区域文件。

反向解析是把IP地址解析成域名格式,因此在定义zone(区域)时应该要把IP地址反写,比如原来是192.168.10.0,反写后应该就是10.168.192,而且只需写出IP地址的网络位即可。

[root@localhost ~]# vim /etc/named.rfc1912.zones
#在中添加反向数据文件的记录
zone "245.168.192.in-addr.arpa" IN {
        type master;
        file "245.168.192.arpa";
};

第二步:编辑数据配置文件。

[root@localhost ~]# cp -a /var/named/named.loopback /var/named/245.168.192.arpa 
[root@localhost ~]# vi /var/named/245.168.192.arpa
#编辑反正配置文件即可,和正向解析格式类似
#PTR为指针记录,仅用于反向解析中。
DNS服务器搭建与正反解析配置

第三步:检查配置文件,重启服务,测试。

[root@localhost ~]# named-checkconf 
[root@localhost ~]# named-checkzone 245.168.192 /var/named/245.168.192.arpa 
zone 245.168.192/IN: loaded serial 20181001
OK
[root@localhost ~]# systemctl restart named
DNS服务器搭建与正反解析配置

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/11720

(0)
凯影的头像凯影
上一篇 2024年5月15日 下午1:28
下一篇 2024年5月16日 下午3:21

相关推荐

  • 如何保持esxi修改的策略在重启后依然生效

    vmkernel使用的是内存文件系统,配置、日志、补丁都保存在内存中。而 开机引导使用的p_w_picpaths 则保存在/bootbank和 /altbootbank目录下。这也是为什么 esxi 系统不需要在主机上安装,也可以直接引导起来的原因,它会把远程的镜像直接安装到内存中。     如何将配置保存,在 esxi 系统重启后依然有效,我查了不少文档,…

    2023年3月14日
    62400
  • TrueNAS创建NFS共享

    NFS高级选项: 同一个NFS共享中 “Maproot” 和 “Mapall” 二者只能使用一个。即便你两项都进行了设置,系统也会默认用 “Mapall” 的设置覆盖 “Maproot” 设置。如果只希望限制 root 用户权限,则设置 “Maproot” 选项。如果希望限制所有用户的权限,则设置 “Mapall” 选项。 卷和数据集会被…

    2023年2月22日
    1.7K00
  • 宝塔BT面板伪静态规则大全集合汇总

    宝塔伪静态规则程序列表 宝塔伪静态规则程序源码包括:WordPress、帝国EmpireCMS、dedecms、discuz、drupal、ecshop、laravel5、phpcms、phpwind、shopex、thinkphp、typecho、weengine、zblog、dabr、dbshop、emlog、maccms、mvc、niushop、sab…

    2023年10月25日
    64200
  • Windows环境powershell 运维之历史文件压缩清理

    一、Power Shell概述1.1 Windows Power Shell简介Windows PowerShell 是微软发布的一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能。 引入了许多非常有用的新概念,从而进一步扩展了在 Windows 命令提示符和 Windows Script Host 环境中…

    2023年12月29日
    43800
  • 解析Vue中的虚拟DOM与Diff算法:提升性能的利器

    前言 vue中的diff算法时常是面试过程中的考点,本文将为大家讲解何为diff以及diff算法的实现过程。那么在了解diff之前,我们需要先了解虚拟DOM是什么? 虚拟DOM 虚拟 DOM (Virtual DOM,简称 VDOM) 是一种编程概念,意为将目标所需的 UI 通过数据结构“虚拟”地表示出来,保存在内存中,然后将真实的DOM与之保持同步。具体来…

    2024年3月22日
    68900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信