Linux基础服务——Bind DNS服务 Part1
Linux基础服务——Bind DNS服务 Part1
DNS正向解析
实验环境:
CentOS8.3.2011 IP地址:192.168.100.50
VMware虚拟环境 NAT网段
需要解析的区域为 test.com
环境准备
Yum源配置(略),安装net-tools vim等常用工具。
[root@localhost ~]# yum install -y vim net-tools bind bind-utils
Last metadata expiration check: 0:00:07 ago on Thu 03 Jun 2021 08:07:03 AM EDT.
Package vim-enhanced-2:8.0.1763-15.el8.x86_64 is already installed.
Package net-tools-2.0-0.52.20160912git.el8.x86_64 is already installed.
Package bind-32:9.11.20-5.el8.x86_64 is already installed.
Package bind-utils-32:9.11.20-5.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
关闭SElinux与防火墙(防火墙可选择开放相应服务或端口)
[root@localhost ~]# setenforce 0 (临时关闭SElinux,重启系统后SElinux将回到Enforcing状态)
[root@localhost ~]# systemctl stop firewalld && systemctl disable firewalld(关闭防火墙与禁止防火墙开启自启动)
永久关闭SElinux方法
[root@localhost ~]# vim /etc/sysconfig/selinux
将文件内的 SELINUX=enforcing 改为 SELINUX=disabled
防火墙配置
[root@localhost ~]# firewall-cmd --add-service=dns --permanent
[root@localhost ~]# firewall-cmd --reload
(亦可开放tcp与udp53端口,若使用rndc则需开启tcp/953端口)
实验步骤
Bind主配置文件为/etc/named.conf,DNS区域文件存储与/var/named下,服务名称为named,服务账户为named,首先配置主配置文件。
[root@localhost ~]# vim /etc/named.conf
主配置文件默认分为options中的全局设置、logging的日志设置 、zone定义的区域设置和include包含其他的配置文件。
先查看下列的部分全局设置。

默认服务监听在IPV4和IPV6的本地环回的53端口上(TCP/UDP),并定义了服务所使用的文件与目录,指定了允许访问的主机,这些选项根据实际需要进行修改。我们将服务监听所有地址上、并允许任何主机进行访问。如下图所示。

对于日志的配置先按下不提,对于test.com这个域进行解析则需要先定义该区域。
如下图,默认配置已经定义了根(hint)区域,并包含了其他文件中预定义的区域。

我们可以直接在主配置文件中定义,也可以进入其他的配置文件进行定义(不建议进入默认的引入的配置文件定义区域),此处在主配置文件中进行定义。注意配置时行末需要添加分号。

zone后跟双引号内的内容为区域名称
区域内的参数,type为区域类型。区域分为大致四个类型,分别是:
- Forward(转发)
- master(主)
- salve(从)
- hint(根)
file指的是区域文件保存的位置,默认路径是相对于/var/named目录下的。
此时对主配置文件的操作已经结束了
区域文件编写
接下来编写区域文件,进入/var/named目录
[root@localhost ~]# cd /var/named/
[root@localhost named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
默认/var/named目录具有以上内容,salves用于存放从域的区域文件,named.ca存放dns的根服务器的信息,一般编写区域文件可以复制named.localhost文件的内容开始,修改该文件的内容。
[root@localhost named]# cp named.localhost test.com.zones
[root@localhost named]# vim test.com.zones

默认文件内容如上
对于@符号的意义如下(Bind官网文档),可以理解为这里的@为区域名称后加上一个. 在这里的意思为test.com.
4.3.5.1. The @ (at-sign)
When used in the label (or name) field, the asperand or at-sign (@) symbol represents the current origin. At the start of the zone file, it is the <zone_name>, followed by a trailing dot (.).
第一行的$TTL设置了DNS信息的TTL 默认为1天
第二行则是本区域的SOA记录,SOA这种记录是所有区域性文件中的强制性记录。它必须是一个文件中的第一个记录。
紧随SOA的@代表着该区域的主DNS服务器,之后配置中我们将会替换该值,rname.invalid.为区域管理员的邮箱,邮箱地址中的@符号使用.进行替换。在后续括号中的内容则为其他的DNS相关信息。
- NS记录指定了那些主机能够为该域提供解析。
- A记录则是指定域名与IP地址关系的记录。
- AAAA则是IPV6的解析。
记录的一般形式为 [域名] [类型] [IP地址]
若域名为空,则会自动填充@在其中。
下面进行配置,结果如下图。

为什么部分A记录采用的是完全合格域名(FQDN),其他的则只需要整个域名的其中一部分呢?它们之间并没有区别,因为在区域文件中隐藏着一个变量——$ORIGIN。
这个变量实际上代表着区域名称后跟一个.(英文句点),它会对不是完全合格域名的记录进行补齐。
所以实际上NS记录的完整形式是 test.com. NS dns.test.com.
这样减轻了配置量,也使配置文件的可读性提高了,简单的区域文件编写完毕,可以启动服务以提供解析服务。
启动服务与功能检测
[root@localhost named]# chgrp named test.com.zones
修改文件所有者以使得named账户可读。
[root@localhost named]# systemctl enable --now named(开启自启服务并启动服务)
使用主机测试DNS解析是否正常。(解析成功)

Linux基础服务——Bind DNS服务 Part1的更多相关文章
- Linux基础服务——Bind DNS服务 Part2
Linux基础服务--Bind DNS服务 Part2 DNS反向解析与区域传送 实验环境延续Part1的实验环境. 反向区域配置 正向解析是域名到IP地址的映射,反向解析则是IP地址到域名的解析,在 ...
- Bind DNS服务——转发与区域记录更新
Linux基础服务--Bind DNS服务 Part4 转发与区域记录更新 一个DNS服务器不可能保存所有的区域记录,所以我们一般都会将其他的区域纪录转发到其他的服务器上进行解析. Bind9提供了全 ...
- Bind DNS服务——基础知识
Linux基础--Bind DNS服务 Part0 DNS简介 域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库 ...
- 前6名免费DNS服务 - 公共DNS服务
前6名免费DNS服务 - 公共DNS服务 谷歌 8.8.8.8,8.8.4.4备份,用户将期望并获得高可用性,如DNSSEC等过滤和安全保护. OpenDNS 现在是Cisco帝国的一部分,主要是20 ...
- Linux服务之DNS服务篇
一.DNS服务概述 DNS(Domain Name System)域名系统,在TCP/IP 网络中有非常重要的地位,能够提供域名与IP地址的解析服务. DNS 是一个分布式数据库,命名系统采用层次的逻 ...
- NTP服务和DNS服务(week3_day3)--技术流ken
NTP时间服务器 作用:ntp主要是用于对计算机的时间同步管理操作. 时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响. 部署安装NTP ...
- 末学者笔记--NTP服务和DNS服务
NTP时间服务器 一.概念: 作用:ntp主要是用于对计算机的时间同步管理操作. 时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响. 二 ...
- NTP服务和DNS服务
1.NTP时间服务器 作用:NTP主要用于对计算机的时间同步管理操作 1.1 NTP部署 服务端:192.168.16.6 客户端:192.168.16.7 [root@localhost ~]# ...
- (一)跟我一起玩Linux网络服务:DNS服务——BIND(/etc/named.conf、/var/named)设置实现和解释
2015年3月24更新 添加了要加的配置域名解析器(否则会找不到域名) 一.创建该实验的的模型 配置完gate虚拟机的两张网卡后,就启动gate的转发 [root@localhost ro ...
随机推荐
- Algorithm(4th) 1.5 union-find算法
问题描述 问题输入是一对整数对,每个整数都代表一个对象,一对整数"p,q"表示 "p与q相连"(具有自反性,传递性,对称性,被归到一个等价类里),要求编写程序来 ...
- 4- MySQL创建表以及增删改查
查看表结构 查看表的结构,使用命令:desc 表明: 创建表(命令) 格式:使用create table创建表,必须给出下列信息: 1.新表的名字. 2.表中列的名字和定义,用逗号隔开. 语法: cr ...
- 08- Tomcat入门与环境搭建部署
环境搭建:网站文件(开发人员提供),相关软件(web服务器,应用服务器,数据库软件),硬件(服务器设备上),网络环境. 开发人员提供:部署文档说明书(操作系统版本,硬件配置,服务器软件及相关版本,部署 ...
- 【aws-系统】简单的SNS到电报通知机器人
动机 我已经使用此设置几个月了,这是我的用例: 预定的提醒.我有一些安排好的CloudWatch Events,以提醒我有关各种日常活动以及我从文章和书籍中保存的想法数据库中的随机推销的信息. 应用程 ...
- CVE-2012-3569:VMware OVF Tool 格式化字符串漏洞调试分析
0x01 简介 VMware OVF Tool 是一个命令行实用程序,允许您从许多 VMware 产品导入和导出 OVF 包.在 2.1.0 - 2.1.3 之间的版本中存在格式化字符串漏洞,通过修改 ...
- Windows Pe 第三章 PE头文件(上)
第三章 PE头文件 本章是全书重点,所以要好好理解,概念比较多,但是非常重要. PE头文件记录了PE文件中所有的数据的组织方式,它类似于一本书的目录,通过目录我们可以快速定位到某个具体的章节:通过P ...
- XCTF-fakebook
fakebook stm的fakebook,乍一看还以为是facebook,果然fake 看题 有登录和注册两个功能点 看了下robots.txt,发现有备份文件 果断下载,内容如下 这里的blog在 ...
- Day003 数据类型
数据类型 强类型语言 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用(java.c++.c#) 弱类型语言 与强类型语言定义相反(javaScript) Java的数据类型 基本 ...
- jupyter中那些神奇的第三方拓展魔术命令
1 简介 无论是jupyter notebook还是jupyter lab,都可以使用ipython中的众多自带魔术命令来实现丰富的辅助功能,诸如%time之类的. 这些都已经是老生常谈的知识没什么好 ...
- Google Chrome飞天小恐龙
输入网址 chrome://dino/ ,F12->console,上代码 满分 Runner.instance_.setSpeed(99999); 不死护体 window.tempGameOv ...