Centos7 配置DNS服务-第三篇

CentOS7 配置DNS服务-第三篇

某校园网要架设一台主DNS服务器负责linux-xxx域(xxx为姓名拼音或首字母)的域名解析工作,服务器IP地址为192.168.1.学号。
要求:1、为以下域名实现正向和反向域名解析服务。
dns.linux-xxx.com 192.168.1.学号
mail.linux-xxx.com MX记录 192.168.1.180
study.linux-xxx.com 192.168.1.181
teach.linux-xxx.com 192.168.1.182
www.linux-xxx.com 192.168.1.183
2、配置从DNS服务器,IP地址为192.168.1.199
3、其它虚拟机设置以上主从DNS服务器测试正常。
4、windows主机设置以上主从DNS服务器测试正常。

一、主服务器dns的配置

1. 安装BINDC

BINDC Berkeley Internet Name Domain,伯克利因特网名称域)服务是全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。DNS域名解析服务作为互联网基础设施服务,其责任之重可想而知,因此建议读者在生产环境中安装部署BIND服务程序时加上chroot(俗称牢笼机制)扩展包,以便有效地限制BIND服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全。

 yum install -y bind-chroot

BIND服务程序中有下面这三个比较关键的文件来配置DNS查询服务。
(1)主配置文件(/etc/named. conf):只有58行,而且在去除注释信息和空行之后,实际有效的参数仅有30行左右,这些参数用来定 义BIND服务程序的运行。
(2)区域配置文件(/etc/named. rfe1912. zones):用来保存城名和IP地址对应关系的
所在位置。类似于图书的目录,对应着每个城和相应IP地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。
(3)数据配置文件目录(/var/named):该目录用来保存城名和IP地址真实对应关系
的数据配置文件。

2.配置主配置文件

打开BIND服务程序的主配置文件

 vim /etc/named.conf

把第11行和第17行的地址均修改为any,如图所示
在这里插入图片描述
listen-on port53 ( any; ):设置监听在这部DNS服务器系统上面的哪个网络接口。预设是监听"localhost或127.0.0.1”,即只有本机可以对DNS服务进行查询,那当然是很不合理的。所以这里要将大括号内的数据改写成any.因为可以监听多个接口,因此any后面要加上分号才算结束。另外,这个项目如果忘记写也没有关系,因为默认是对整个主机系统的所有接口进行监听的。
allow-query ( any; );是针对客户端的设定.到底谁可以对我的DNS服务提出查询请求的意思。原本的内容预设只是针对localhost开放而已,这里改成对所有的用户开放,防火墙也得放行才行。不过,默认DNS就是对所有用户放行,所以这个设定值也可以不用写。

3.配置正向解析区域

(1)配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

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

};

下面是对参数的解释
在这里插入图片描述

(2)编辑数据配置文件

1.先从/var/named复制一份模板

cp -p /var/named/named.localhost /var/named/linux-gjy.com.zone

注意复制的文件名linux-gjy.com.zone与上一个file"xxx"是一致的如图所示

在这里插入图片描述
打开/var/named/linux-gjy.com.zone文件

vim /var/named/linux-gjy.com.zone

编辑参数

$TTL 1D
@       IN SOA  linux-gjy root.linux-gjy.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.linux-gjy.com.
dns     IN A    192.168.1.7
        IN MX 10 mail.linux-gjy.com.
mail    IN A    192.168.1.7
study   IN A    192.168.1.181
teach   IN A    192.168.1.182
www     IN A    192.168.1.183

在这里插入图片描述
保存之后重启BINDC,BINDC服务程序的名称是named

systemctl restart named

可能会报错权限问题

使用chmod 755 文件名给权限

(3)检验解析结果

打开/etc/resolv.conf文件

vim /etc/resolv.conf

编辑DNS地址参数为自己的ip,如图所示
在这里插入图片描述
注意
1.如果重启网络systemctl restart network可能会导致文件配置失效,变为ipV6地址,为下面尝试自我域名解析时候不成功。
除非把IPv6给关了

nmtui

在这里插入图片描述

2.如果重启电脑可能会导致文件配置失效,需要重新试一次

保存之后重启BINDC

systemctl restart named

使用nslookup命令进行域名解析
在这里插入图片描述
如果不成功可以尝试
关闭防火墙systemctl stop firewalld

4、配置反向解析区域

(1)配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "1.168.192.in-addr.arpa" IN{
        type master;
        file "192.168.1.arpa";
};

在这里插入图片描述
(2)编辑数据配置文件
1.先从/var/named复制一份模板

cp -p /var/named/named.loopback /var/named/192.168.1.arpa

注意复制的文件名192.168.1.arpa与上一个file"xxx"是一致的如图所示
在这里插入图片描述
打开/var/named/192.168.1.arpa配置文件

vim /var/named/192.168.1.arpa

添加下面参数

$TTL 1D
@       IN SOA  linux-gjy.com. root.linux-gjy.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.linux-gjy.com.
dns     A       192.168.1.7
7       PTR     dns.linux-gjy.com.
7       PTR     mail.linux-gjy.com.
181     PTR     study.linux-gjy.com.
182     PTR     teach.linux-gjy.com.
183     PTR     www.linux-gjy.com.

在这里插入图片描述

保存之后重启BINDC,BINDC服务程序的名称是named

systemctl restart named

(2)配置网卡

使用nmtui命令图形化界面添加ip

编辑连接->网卡名称->添加ip,如图所示
在这里插入图片描述
之后重启网卡就好了,

 nmcli co down 666;nmcli co up 666;

666是我的网卡名

(3)检验解析结果

使用nslookup命令进行域名解析

在这里插入图片描述

三、配置主、从服务器

主服务器配置

在之前的配置主服务器的基础上,更改一下配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "linux-gjy.com" IN{
      type master;
      file "linux-gjy.com.zone";
      allow-update { 192.168.1.199; };

};
zone "1.168.192.in-addr.arpa" IN{
        type master;
        file "192.168.1.arpa";
        allow-update { 192.168.1.199; };

};

在这里插入图片描述
重启DNS服务

systemctl restart named

一定要用nslookup测试一遍,确定主服务器没有问题

从服务器配置

因为我之前已经克隆了一台没有配置主的服务器,用这个来当从服务器

(1)配置区域配置文件

打开区域配置文件

vim /etc/named.rfc1912.zones

可以将下面的参数添加的文件下面

zone "linux-gjy.com" IN{
      type slave;
      masters { 192.168.1.7; };
      file "slaves/linux-gjy.com.zone";
      
};
zone "1.168.192.in-addr.arpa" IN{
        type slave;
        masters { 192.168.1.7; };
        file "slaves/192.168.1.arpa";

};

在这里插入图片描述

2)修改配置文件/etc/named.conf

vim /etc/named.conf

在这里插入图片描述
改为any

(3)配置网卡

使用nmtui命令图形化界面更改ip和DNS

编辑连接->网卡名称->更改ip(192.168.1.199)和DNS服务器ip(192.168.1.7)主机的,如图所示
在这里插入图片描述

之后重启网卡就好了,

 nmcli co down 666;nmcli co up 666;

打开/etc/resolv.conf文件

vim /etc/resolv.conf

配置从服务器DNS为主机ip 192.168.1.7和从机的192.168.1.199
在这里插入图片描述
1.如果重启网络systemctl restart network会导致文件配置失效,变为ipV6地址,为下面尝试自我域名解析时候不成功。
除非把IPv6给关了

nmtui

重启DNS服务

systemctl restart named

(4)检验解析结果

1.先打开从服务器的cd /var/named/slaves/目录

ll查看目录下文件

在这里插入图片描述
发现已经有了这两个文件说明成功了
如果没有主服务器和从服务器分别执行下面命令
DNS域名解析不了的一半原因是这些

systemctl stop firewalld
setenforce 0
systemctl restart named

2.使用nslookup解析一下域名或者ip

在这里插入图片描述
说明成功了DNS域名解析
3.我们再使用dig命令

dig 命令是一个强大的工具,用于进行 DNS(Domain Name System)查询。它可以用于获取有关域名解析、DNS 服务器配置和其他相关信息的详细数据。

我们要使用 dig 命令对 IP 地址 192.168.1.183 进行 DNS 查询,执行以下命令:

dig -x 192.168.1.183

如图所示
在这里插入图片描述

我们要使用 dig 命令对 域名www.linux-gjy.com 进行域名解析,执行以下命令:

dig www.linux-gjy.com

在这里插入图片描述
到这里就成功了!!!

<think>好的,用户想知道如何在CentOS 7配置DNS服务。我需要先整理一下步骤,确保流程清晰。首先,安装BIND软件包,这是常见的DNS服务器软件,引用中提到了使用yum安装,所以第一步应该是yum install bind bind-chroot。然后配置主文件named.conf,可能需要修改监听地址和允许查询的客户端,这里要注意dnssec的设置,引用3提到要关闭dnssec-enable和dnssec-validation,避免解析问题。接下来配置区域文件,比如添加正向和反向解析区域,引用2提到了/etc/named.rfc1912.zones。然后创建区域数据文件,比如在/var/named下建立example.com.zone和对应的反向文件,注意文件权限和属主是否正确。检查语法错误很重要,用named-checkconf和named-checkzone。然后启动服务并设置开机启动,systemctl enable named --now。防火墙需要放行53端口,可能还要配置SELinux或者关闭它。最后测试DNS解析是否正常,用nslookup或者dig命令。用户可能遇到的问题包括配置文件语法错误、权限问题、防火墙阻挡或者SELinux限制,需要提醒他们检查这些地方。另外,根据引用4,可能需要修改网络接口的DNS设置,指向自己配置服务器。整个过程需要一步步来,确保每个步骤都正确,避免遗漏。现在要把这些步骤整理成用户容易理解的流程,使用代码块和必要的强调,同时生成相关问题帮助用户深入理解。</think>以下是在CentOS 7配置DNS服务的详细步骤: ### 一、安装BIND服务 1. 清理yum缓存并安装软件包 ```bash yum clean all yum install bind bind-chroot -y ``` *注:bind-chroot为安全增强组件,提供沙箱环境[^5]* ### 二、配置配置文件 2. 修改`/etc/named.conf` ```bash vim /etc/named.conf ``` 需要修改以下参数: ```conf options { listen-on port 53 { any; }; // 允许所有IP监听 allow-query { any; }; // 允许所有客户端查询 dnssec-enable no; // 关闭DNSSEC验证[^3] dnssec-validation no; }; ``` ### 三、配置区域文件 3. 编辑`/etc/named.rfc1912.zones` ```bash vim /etc/named.rfc1912.zones ``` 添加正向/反向解析配置示例: ```conf zone "example.com" IN { type master; file "example.com.zone"; }; zone "1.168.192.in-addr.arpa" IN { type master; file "192.168.1.rev"; }; ``` ### 四、创建区域数据文件 4. 在`/var/named/`目录创建解析文件 正向解析文件示例: ```bash $TTL 1D @ IN SOA ns.example.com. root.example.com. ( 2024010101 ; serial 3H ; refresh 15M ; retry 1W ; expire 1D ) ; minimum @ IN NS ns.example.com. ns IN A 192.168.1.100 www IN A 192.168.1.101 ``` ### 五、验证与启动服务 5. 检查配置语法 ```bash named-checkconf named-checkzone example.com /var/named/example.com.zone ``` 6. 启动服务并设置开机自启 ```bash systemctl enable named --now firewall-cmd --add-service=dns --permanent firewall-cmd --reload ``` ### 六、配置客户端测试 7. 修改客户端DNS设置(引用[4]) ```bash vim /etc/sysconfig/network-scripts/ifcfg-ens33 ``` 添加: ```conf DNS1=192.168.1.100 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值