《DNS与BIND(第5版)》——4.3 建立BIND配置文件

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介:

本节书摘来自异步社区《DNS与BIND(第5版)》一书中的第4章,第4.3节,作者: 【美】Joseph Davies 更多章节内容可以访问云栖社区“异步社区”公众号查看。

4.3 建立BIND配置文件

现在已经创建好了区域数据文件,接下来必须指引名称服务器读取这些文件。对于BIND来说,指引服务器读取其区域数据文件的机制便是配置文件。到目前为止,本章已经讨论了那些数据和格式被DNS规范描述过的文件。不过,下面所讨论的配置文件的语法,虽然是BIND所特有的,但是却没有在DNS RFC中被定义。

从版本4到版本8之间,BIND配置文件的语法发生了显著的变化。幸运的是,BIND 8和BIND 9之间未发生任何变化。BIND 4已问世很久了,这里就不再讨论它的配置文件。如果还在使用那些老古董的话,那么应该去参考一下本书之前的版本(应该能找到一本便宜的二手书)。在配置文件中,可以使用三种样式的注释:C样式、C++样式或者shell样式。


4ec747e02e4a06ee35b6f9f7ea48879330d25e9a

通常,配置文件中会有一行用来说明区域数据文件所存放的目录。名称服务器在读取区域数据文件之前会将它的工作目录切换到该目录下。这就允许指定相对于当前目录的文件名称,来代替完整的路径名称。下面是options语句中用来说明区域数据文件所在目录的行:


<a href=https://yqfile.alicdn.com/51a7ca99f84873ce0d76f8dfadca25b45479d9f3.png" >

提示

由于配置文件中只能出现一个options语句,所以本书后面提到的任何其他选项都必须和上面的directory选项放在一起。
在primary服务器上,每个要读取的区域数据文件在配置文件中都有一个zone语句。每行都以关键字“zone”开头,后面跟着区域的域名以及类(in表示Internet)。master类型用来指出这个名称服务器是一个primary名称服务器。最后一行包含了文件名:


<a href=https://yqfile.alicdn.com/279a7d1f5ed5cc6864f1b278c0c633c0516ba390.png" >

本章前面曾经提到过,如果省略了资源记录的类字段,那么名称服务器将根据配置文件来决定正确的类。zone语句中的in表示将类设置成Internet类。而zone语句的默认类就是in,因此对于Internet类的区域,可以不设定该字段。

下面是配置文件中用来读取root提示文件的语句:


51ae6c7c3ca51123466d7bddcfb3f7e5e858a034

正如前面所提到的,该文件不是用于一般的缓存数据的。它只包含了root名称服务器的提示数据。

在默认情况下,BIND希望配置文件被命名为/etc/named.conf。我们的例子中的区域数据文件在目录/var/named中。使用哪个目录其实并不重要。但是如果根文件系统的空间有限,那么就要避免将这个目录放在根文件系统中,并且要确保该目录所在的文件系统在名称服务器启动之前就被挂载。下面是一个完整的/etc/named.conf文件:


341ad579293e14bb8b64cfdc9b390a4dc778c16c
相关文章
|
14天前
|
JSON PHP 数据格式
PHP解析配置文件的常用方法
INI文件是最常见的配置文件格式之一。
|
1月前
|
存储 安全 网络协议
Elasticsearch 配置文件解析
【10月更文挑战第3天】Elasticsearch 配置文件解析
82 3
|
5月前
|
缓存 负载均衡 应用服务中间件
深入解析Nginx配置文件
Nginx是一个高性能HTTP服务器和反向代理,其配置文件`nginx.conf`包含全局、事件、HTTP、Server和Location块。全局块设置如用户和工作进程数,事件块设定连接数,HTTP块涉及MIME类型、日志和包含其他配置。Server块定义虚拟主机,Location块处理URI匹配。Nginx常用于反向代理和负载均衡,如`proxy_pass`指令转发请求至后端服务器组。理解这些配置有助于服务器优化和测试。
|
2月前
|
Rust Python
Python 解析 toml 配置文件
Python 解析 toml 配置文件
48 1
|
2月前
|
网络协议 网络安全
基于bind软件部署DNS服务器
关于如何使用bind软件部署DNS服务器的教程,包括DNS服务器的类型、基于bind软件的部署步骤、验证DNS服务器可用性的指导,以及如何进行DNS正向解析的实现。
90 2
基于bind软件部署DNS服务器
|
2月前
|
Python
Python 解析 yaml 配置文件
Python 解析 yaml 配置文件
47 0
|
2月前
|
Python
Python 解析 ini 配置文件
Python 解析 ini 配置文件
37 0
|
3月前
|
安全 Unix Linux
samba 配置文件解析
【8月更文挑战第8天】Samba是一款开源软件套件,支持不同操作系统间的文件与打印机共享。它通过实现SMB/CIFS协议,确保了Linux/UNIX系统与Windows系统的互操作性。Samba具备文件共享、打印机管理、安全性设置及域控制器等功能,适用于搭建文件服务器、打印服务器及身份验证服务,并促进跨平台的数据访问与协作。其配置灵活,可根据需要调整共享目录的权限、可见性及用户认证方式。
52 3
|
3月前
|
机器学习/深度学习 计算机视觉 Python
深度学习项目中在yaml文件中定义配置,以及使用的python的PyYAML库包读取解析yaml配置文件
深度学习项目中在yaml文件中定义配置,以及使用的python的PyYAML库包读取解析yaml配置文件
105 0
|
4月前
|
消息中间件 存储 负载均衡
zookeeper 特点、使用场景及安装,配置文件解析
zookeeper 特点、使用场景及安装,配置文件解析
73 2

相关产品

  • 云解析DNS
  • 推荐镜像

    更多
    下一篇
    无影云桌面