1、安装bind 软件包
首先,需要安装 bind 软件包,这可以通过运行以下命令来完成:
[root@localhost ~]# yum install bind
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 bind.x86_64.32.9.11.4-26.P2.el7_9.16 将被 安装
--> 正在处理依赖关系 bind-libs-lite(x86-64) = 32:9.11.4-26.P2.el7_9.16,它被软件包 32:bind-9.11.4-26.P2.el7_9.16.x86_64 需要
--> 正在处理依赖关系 bind-libs(x86-64) = 32:9.11.4-26.P2.el7_9.16,它被软件包 32:bind-9.11.4-26.P2.el7_9.16.x86_64 需要
--> 正在检查事务
---> 软件包 bind-libs.x86_64.32.9.11.4-26.P2.el7 将被 升级
--> 正在处理依赖关系 bind-libs(x86-64) = 32:9.11.4-26.P2.el7,它被软件包 32:bind-utils-9.11.4-26.P2.el7.x86_64 需要
---> 软件包 bind-libs.x86_64.32.9.11.4-26.P2.el7_9.16 将被 更新
--> 正在处理依赖关系 bind-license = 32:9.11.4-26.P2.el7_9.16,它被软件包 32:bind-libs-9.11.4-26.P2.el7_9.16.x86_64 需要
---> 软件包 bind-libs-lite.x86_64.32.9.11.4-26.P2.el7 将被 升级
---> 软件包 bind-libs-lite.x86_64.32.9.11.4-26.P2.el7_9.16 将被 更新
--> 正在检查事务
---> 软件包 bind-license.noarch.32.9.11.4-26.P2.el7 将被 升级
---> 软件包 bind-license.noarch.32.9.11.4-26.P2.el7_9.16 将被 更新
---> 软件包 bind-utils.x86_64.32.9.11.4-26.P2.el7 将被 升级
---> 软件包 bind-utils.x86_64.32.9.11.4-26.P2.el7_9.16 将被 更新
--> 解决依赖关系完成
依赖关系解决
======================================================================================================================================================
Package 架构 版本 源 大小
======================================================================================================================================================
正在安装:
bind x86_64 32:9.11.4-26.P2.el7_9.16 updates 2.3 M
为依赖而更新:
bind-libs x86_64 32:9.11.4-26.P2.el7_9.16 updates 159 k
bind-libs-lite x86_64 32:9.11.4-26.P2.el7_9.16 updates 1.1 M
bind-license noarch 32:9.11.4-26.P2.el7_9.16 updates 92 k
bind-utils x86_64 32:9.11.4-26.P2.el7_9.16 updates 262 k
事务概要
======================================================================================================================================================
安装 1 软件包
升级 ( 4 依赖软件包)
总计:4.0 M
Is this ok [y/d/N]: y
Downloading packages:
警告:/var/cache/yum/x86_64/7/updates/packages/bind-9.11.4-26.P2.el7_9.16.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
从 http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 检索密钥
导入 GPG key 0xF4A80EB5:
用户ID : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
指纹 : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
来自 : http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
是否继续?[y/N]:y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在更新 : 32:bind-license-9.11.4-26.P2.el7_9.16.noarch 1/9
正在更新 : 32:bind-libs-lite-9.11.4-26.P2.el7_9.16.x86_64 2/9
正在更新 : 32:bind-libs-9.11.4-26.P2.el7_9.16.x86_64 3/9
正在安装 : 32:bind-9.11.4-26.P2.el7_9.16.x86_64 4/9
正在更新 : 32:bind-utils-9.11.4-26.P2.el7_9.16.x86_64 5/9
清理 : 32:bind-utils-9.11.4-26.P2.el7.x86_64 6/9
清理 : 32:bind-libs-9.11.4-26.P2.el7.x86_64 7/9
清理 : 32:bind-libs-lite-9.11.4-26.P2.el7.x86_64 8/9
清理 : 32:bind-license-9.11.4-26.P2.el7.noarch 9/9
验证中 : 32:bind-9.11.4-26.P2.el7_9.16.x86_64 1/9
验证中 : 32:bind-libs-9.11.4-26.P2.el7_9.16.x86_64 2/9
验证中 : 32:bind-utils-9.11.4-26.P2.el7_9.16.x86_64 3/9
验证中 : 32:bind-libs-lite-9.11.4-26.P2.el7_9.16.x86_64 4/9
验证中 : 32:bind-license-9.11.4-26.P2.el7_9.16.noarch 5/9
验证中 : 32:bind-libs-9.11.4-26.P2.el7.x86_64 6/9
验证中 : 32:bind-license-9.11.4-26.P2.el7.noarch 7/9
验证中 : 32:bind-utils-9.11.4-26.P2.el7.x86_64 8/9
验证中 : 32:bind-libs-lite-9.11.4-26.P2.el7.x86_64 9/9
已安装:
bind.x86_64 32:9.11.4-26.P2.el7_9.16
作为依赖被升级:
bind-libs.x86_64 32:9.11.4-26.P2.el7_9.16 bind-libs-lite.x86_64 32:9.11.4-26.P2.el7_9.16 bind-license.noarch 32:9.11.4-26.P2.el7_9.16
bind-utils.x86_64 32:9.11.4-26.P2.el7_9.16
完毕!
2: 配置 DNS 服务器
需要编辑 DNS 服务器的主要配置文件 /etc/named.conf。
这个文件定义了 DNS 服务器的行为和区域文件的位置等信息。
编辑 /etc/named.conf
打开 /etc/named.conf 文件进行编辑:
sudo vi /etc/named.conf
在文件中找到如下行:
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
在这两行下方添加一个新的区域声明,用于定义本地 DNS 服务器。
例如,假设域名为 example.com,可以添加如下内容:
zone "example.com" {
type master;
file "example.com.zone";
allow-update { none; };
};
保存并关闭文件。
3: 创建区域文件
接下来,需要创建一个区域文件,用于存储 DNS 记录。
在这个例子中,我们将创建一个名为 example.com.zone 的文件。
创建一个新文件 /var/named/example.com.zone,并编辑它:
sudo vi /var/named/example.com.zone
在文件中添加以下内容:
$TTL 1D
@ IN SOA example.com. admin.example.com. (
2023082101 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
; NS records
@ IN NS ns1.example.com.
ns1 IN A 192.168.135.xxx
; MX record
mail IN MX 10 mail.example.com.
mail IN A 192.168.135.xxx
; A records
www IN A 192.168.135.xxx
保存并关闭文件。
4.启动并设置 DNS 服务开机启动
启动 named 服务:
sudo systemctl start named
设置服务开机启动:
sudo systemctl enable named
5、验证配置
使用 named-checkconf 和 named-checkzone 工具验证配置文件和区域文件的语法是否正确:
sudo named-checkconf
sudo named-checkzone example.com /var/named/example.com.zone
使用 nslookup 或 dig 工具测试 DNS 查询:
nslookup www.example.com
dig www.example.com
6、配置客户端
为了让虚拟机使用刚刚设置的 DNS 服务器,需要配置它们的 /etc/resolv.conf 文件。
例如,在客户端上执行以下操作:
打开 /etc/resolv.conf 文件进行编辑:
sudo vi /etc/resolv.conf
添加以下内容:
nameserver 192.168.135.xxx
保存并关闭文件。
现在,CentOS 7.6 服务器已经配置为 DNS 服务器,并且虚拟机也已经设置为使用它进行 DNS 解析。