CentOS基础系列六 :搭建DNS服务(详细图解)

一、DNS服务介绍

DNS(Domain Name Server,域名服务器)是为了便于访问Internet而采用的一种分布式的域名→IP地址的映射查询和管理方法。用户在不知道主机IP地址而只知道主机域名的情况下,也可以轻松访问服务器,这就是DNS的功劳,DNS 协议运行在 UDP 协议之上,使用端口号 53。

二、安装DNS服务

2.1 安装DNS服务

yum install bind			# dns服务软件
yum install bind-chroot		# dns服务的安全保护软件
yum install bind-utils  	# dns默认的查询工具,比如nslookup、host等
yum install bind-libs  	    # dns类库文件,默认安装
或者
[root@centos8-106 ~]# yum install bind bind-chroot bind-utils -y	# 一次性安装完

2.2 DNS服务配置文件
dns服务器主要有五个配置文件,其中正向、方向解析文件可以复制模板文件进行修改。

文件选项文件名说明
主配置文件/etc/named.conf用于设置dns服务器的全局参数,并指定区域文件名
跟服务器信息文件/var/named/named.ca是缓存服务器的配置文件,通常不需要手动更改
主配文件正反向解析模板文件/etc/named.rfc1912.zones模板文件,实现主配置文件正反向解析的书写
正向区域文件/var/named/named.localhost模板文件,实现主机名到IP的正向解析
反向区域文件/var/named/named.loopback模板文件,实现IP到主机名的正向解析

三、配置DNS服务

3.1 配置主配置文件

打开主配置文件 /etc/named.conf ,修改options,添加正向解析文件指引。

[root@centos8-106 ~]# vim /etc/named.conf
options {
        listen-on port 53 { any; };
		......
        allow-query     { any; };
 
zone "rion.com" IN {			# 指定正向解析文件参数
        type master;
        file "rion.com.zone";
};

在这里插入图片描述
指定了正向解析文件名rion.com.zone,域名rion.com
在这里插入图片描述

3.2 添加正向解析文件

进入正向解析文件目录/var/named

[root@centos8-106 ~]# cd /var/named/
[root@centos8-106 named]# ll
total 16
drwxr-x--- 7 root  named   61 Apr 23 09:18 chroot
drwxrwx--- 2 named named    6 Mar  1 10:20 data
drwxrwx--- 2 named named    6 Mar  1 10:20 dynamic
-rw-r----- 1 root  named 2253 Mar  1 10:21 named.ca
-rw-r----- 1 root  named  152 Mar  1 10:21 named.empty
-rw-r----- 1 root  named  152 Mar  1 10:21 named.localhost		# 正向解析模板文件
-rw-r----- 1 root  named  168 Mar  1 10:21 named.loopback		# 反向解析模板文件
drwxrwx--- 2 named named    6 Mar  1 10:20 slaves

辅助模板文件,修改为rion.com.zone

[root@centos8-106 named]# cp -a named.localhost rion.com.zone
# -a 的作用是辅助模板文件的属性,比如模板文件所属的用户及用户组,
# 如果用户手动创建正向解析配置文件,需要修改所属的用户组为named,下面是手动创建方式
[root@centos8-106 named]# vim rion.com.zone
[root@centos8-106 named]# chown :named rion.com.zone

创建好了正向解析文件,我们开始修改里面的默认配置

[root@centos8-106 named]# vim rion.com.zone
$TTL 1D
				# 域名	  # 用户邮箱,@用点表示了
@       IN SOA  rion.com. root.rion.com. (					# 注意域名末尾有个点,表示结束
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      rion.com.									# 区域中DNS服务器的主机名,注意域名末尾有个点,表示结束
        A       192.168.100.106			# A 表示address,IP地址
        AAAA    ::1						
        MX 10   mail.rion.com.			# MX 表示邮件服务器的域名,需要指定优先级,
ftp     A       192.168.100.110			# ftp.rion.com
www     A       192.168.100.120			# www.rion.com
web     CNAME   www.rion.com.			# CNAME 即别名,表示 web.rion.com 等于 www.rion.com
mail    A       192.168.100.130			# mail.rion.com

配置好后,保存重启服务

systemctl restart named

3.3 测试正向解析文件

修改本机的DNS,设置为自己的IP,因为解析域名时,默认先从本地服务器查询DNS。

[root@centos8-106 named]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述
重新启动网卡

[root@centos8-106 named]# nmcli c reload ens33		# 这条命令针对centos8
[root@centos8-106 named]# nmcli c up ens33 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)

[root@centos7-108 ~]# systemctl restart network		# 这条命令针对centos7
[root@centos7-108 ~]# /etc/init.d/network restart	# 这条命令针对centos7或6
[root@centos6-102 ~]# service network restart		# 这条命令针对centos 6

重启服务,使用nslookup解析主机名是否与IP相等,解析正确。

[root@centos8-106 named]# nslookup 
> www.rion.com
Server:		127.0.0.1
Address:	127.0.0.1#53

Name:	www.rion.com
Address: 192.168.100.120
> web.rion.com
Server:		127.0.0.1
Address:	127.0.0.1#53

web.rion.com	canonical name = www.rion.com.
Name:	www.rion.com
Address: 192.168.100.120

[root@centos8-106 named]# nslookup mail.rion.com
Server:		127.0.0.1
Address:	127.0.0.1#53

Name:	mail.rion.com
Address: 192.168.100.130

在这里插入图片描述

3.4 配置反向解析文件

打开主配置文件 /etc/named.conf,添加反向解析文件索引

[root@centos8-106 named]# vim /etc/named.conf
zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "100.168.192.zone";
};

在这里插入图片描述
创建反向解析文件,目录与正向文件同一位置

[root@centos8-106 named]# cd /var/named/
[root@centos8-106 named]# ll
total 20
-rw-r--r-- 1 root  named    0 Apr 23 09:41 1.txt
drwxr-x--- 7 root  named   61 Apr 23 09:18 chroot
drwxrwx--- 2 named named   23 Apr 23 09:51 data
drwxrwx--- 2 named named   60 Apr 23 09:51 dynamic
-rw-r----- 1 root  named 2253 Mar  1 10:21 named.ca
-rw-r----- 1 root  named  152 Mar  1 10:21 named.empty
-rw-r----- 1 root  named  152 Mar  1 10:21 named.localhost
-rw-r----- 1 root  named  168 Mar  1 10:21 named.loopback
-rw-r----- 1 root  named  289 Apr 23 09:45 rion.com.zone
drwxrwx--- 2 named named    6 Mar  1 10:20 slaves
[root@centos8-106 named]# cp -a named.loopback 100.168.192.zone

配置反向解析文件

[root@centos8-106 named]# vim 100.168.192.zone
$TTL 1D
@       IN SOA  rion.com. root.rion.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      rion.com.
        A       192.168.100.106
        AAAA    ::1
        MX 10   mail.rion.com.
110     PTR     ftp.rion.com.
120     PTR     www.rion.com.
120     PTR     web.rion.com.
130     PTR     mail.rion.com.

在这里插入图片描述

3.5 测试反向解析文件

重启服务,测试反向解析成功
在这里插入图片描述

好了,以上就是DNS的基本配置,文章若有错误欢迎大家指正,谢谢。

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在CentOS 7上搭建DNS服务器,你可以按照以下步骤进行操作: 1. 安装BIND软件包: 在终端中执行以下命令来安装BIND软件包: ``` sudo yum install bind bind-utils ``` 2. 配置配置文件: 编辑`/etc/named.conf`文件,该文件是BIND的主配置文件。你可以使用任何文本编辑器打开该文件,并进行以下配置: ```bash options { listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; recursion yes; }; zone "example.com" IN { type master; file "/var/named/example.com.zone"; allow-update { none; }; }; ``` 这里使用了一个名为"example.com"的示例域名,你可以根据需要修改为你自己的域名。 3. 创建区域文件: 创建一个区域文件来存储DNS记录。在终端中执行以下命令来创建该文件: ```bash sudo nano /var/named/example.com.zone ``` 在打开的文件中,添加以下示例配置: ```bash $TTL 86400 @ IN SOA ns1.example.com. root.example.com. ( 2018010101 ; Serial 3600 ; Refresh 1800 ; Retry 604800 ; Expire 86400 ) ; Minimum @ IN NS ns1.example.com. @ IN A 192.168.1.100 ns1 IN A 192.168.1.100 www IN A 192.168.1.101 ``` 4. 设置文件权限和SELinux策略: 执行以下命令来设置文件权限: ```bash sudo chown named:named /var/named/example.com.zone ``` 执行以下命令来设置SELinux策略: ```bash sudo restorecon -v /var/named/example.com.zone ``` 5. 启动和配置BIND服务: 启动BIND服务并将其设置为开机自启动: ```bash sudo systemctl enable named sudo systemctl start named ``` 6. 配置防火墙规则: 如果系统上启用了防火墙,你需要打开DNS服务器的相关端口。执行以下命令来配置防火墙规则: ```bash sudo firewall-cmd --permanent --add-service=dns sudo firewall-cmd --reload ``` 现在,你已经在CentOS 7上成功搭建DNS服务器。你可以根据自己的需求添加更多的记录到区域文件中,并在客户端上配置DNS服务器地址来使用它。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值