centos7下搭建DNS服务器介绍

 更新时间:2021年12月19日 08:45:49   作者:Kevin学习记录  
大家好,本篇文章主要讲的是centos7下搭建DNS服务器介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览

一:项目环境:

主机 角色 IP地址 功能
dns.kevin.com DNS服务器 192.168.100.10 提供域名解析
win.kevin.com DNS客户端 192.168.100.20 测试域名解析是否正常
www.kevin.com WEB服务器 192.168.100.30 站点服务器
blog.kevin.com FTP服务器 192.168.100.40 博客服务器

二:dns服务器配置

i:配置正向解析:

基础环境配置

[root@kevin ~]# hostname
kevin
[root@kevin ~]# getenforce
Disabled
[root@kevin ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@kevin ~]#

2.安装DNS 服务器软件,并启动

[root@kevin ~]# yum install -y bind
 
[root@kevin ~]# systemctl start named

3.主配置文件/etc/named.conf,DNS服务的全局配置文件。

为了安全,在修改之前先备份该文件。该文件的属组比较特殊,属于named组

[root@kevin ~]# cp -p /etc/named.conf /etc/named.conf.bak

4.修改主配置文件named.conf:13行:监听地址         21行:允许利用本服务器查询的客户机地址

均修改为any

[root@kevin ~]# vi /etc/named.conf
 
 
listen-on port 53 { any; };
allow-query     { any; };

5.修改区域配置文件/etc/named.rfc1912.zones,该文件用于说明哪个区域的数据存放在哪个文件里。 仿照该文件已有内容的格式,在文件末尾新增一个正向查找区域kevin.com,类型是主要区域,数据是kevin.com.zone;

[root@kevin ~]# vi /etc/named.rfc1912.zones
 
zone "kevin.com" IN {
        type master;
        file "kevin.com.zone";
        allow-update { none; };
};

 6.根据第5步,添加正向区域数据文件。数据文件无需新建,可以根据/var/named 目录下提供的文件named.localhost进行复制命名为kevin.com.zone并修改。 将kevin.com.zone内容修改为:

[root@kevin ~]# cp -p /var/named/named.localhost /var/named/kevin.com.zone
[root@kevin ~]# vi /var/named/kevin.com.zone
 
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       192.168.100.10
dns     IN   A  192.168.100.10
win     IN   A  192.168.100.20
www     IN   A  192.168.100.30
blog    IN   A  192.168.100.40
        AAAA    ::1

7.重新加载DNS服务的配置文件

[root@kevin ~]# rndc reload
server reload successful
[root@kevin ~]#

若是加载失败,可使用named-checkconf /etc/named.conf和named-checkzone kevin.com /var/named/kevin.com.zone检查是何处出了错误

[root@kevin ~]# named-checkconf /etc/named.conf
[root@kevin ~]# named-checkzone kevin.com /var/named/kevin.com.zone
zone kevin.com/IN: loaded serial 0
OK

8.完成后,可首先在DNS服务器本地进行测试,修改/etc/resolv.conf,将DNS服务器的地址(即服务器本机地址)写入:

(bind-utils)是DNS服务器的辅助工具包,比如dig主要用来从 DNS 域名服务器查询主机地址信息,可以用来测试域名系统工作是否正常。

或者nslookup等工具

[root@kevin ~]# vi /etc/resolv.conf
 
# Generated by NetworkManager
nameserver 8.8.8.8
[root@kevin ~]# yum install bind-utils
[root@kevin ~]# dig www.kevin.com @192.168.100.10
 
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.8 <<>> www.kevin.com @192.168.100.10
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62498
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
 
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.kevin.com.                 IN      A
 
;; ANSWER SECTION:
www.kevin.com.          86400   IN      A       192.168.100.30
 
;; AUTHORITY SECTION:
kevin.com.              86400   IN      NS      kevin.com.
 
;; ADDITIONAL SECTION:
kevin.com.              86400   IN      A       192.168.100.10
 
;; Query time: 0 msec
;; SERVER: 192.168.100.10#53(192.168.100.10)
;; WHEN: 六 12月 18 14:48:23 CST 2021
;; MSG SIZE  rcvd: 88
 

9:本地测试访问正常,在其他客户机上将网卡的首选 DNS 服务器地址调整为上述表格里设置的DNS服务器地址,再查询相关的记录:

C:\Users\Kevin>nslookup
默认服务器:  UnKnown
Address:  192.168.100.10
 
> www.kevin.com
服务器:  UnKnown
Address:  192.168.100.10
 
名称:    www.kevin.com
Address:  192.168.100.30
 
> blog.kevin.com
服务器:  UnKnown
Address:  192.168.100.10
 
名称:    blog.kevin.com
Address:  192.168.100.40
 
>

目前实现了可以通过主机名查询主机对应的 IP 地址,但是通过 IP 地址查询对应的主机名还不能完成,因为没有配置反向查找区域。

 ii :配置反向解析

1.主要思路同正向查找区域配置。主配置文件已无需修改。 修改辅助配置文件,在文末新增一个反向查找区域,注意反向查找区域名称的命名格式:

[root@kevin ~]# vi /etc/named.rfc1912.zones
 
zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.100.arpa";
        allow-update { none; };
};

2.复制反向解析文件模板进行修改:

[root@kevin ~]# cp -p /var/named/named.loopback /var/named/192.168.100.arpa
[root@kevin ~]# vi /var/named/192.168.100.arpa
 
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.kevin.com.
dns     IN   A          192.168.100.10
10      IN   PTR          dns.kevin.com.
20      IN   PTR          win.kevin.com.
30      IN   PTR          www.kevin.com.
40      IN   PTR          blog.kevin.com.

重载配置文件:

[root@kevin ~]# systemctl restart named
[root@kevin ~]# rndc reload
server reload successful

3:在客户机测试反向解析是否正确:

C:\Users\Kevin>nslookup
默认服务器:  dns.kevin.com
Address:  192.168.100.10
 
> 192.168.100.30
服务器:  dns.kevin.com
Address:  192.168.100.10
 
名称:    www.kevin.com
Address:  192.168.100.30
 
> 192.168.100.40
服务器:  dns.kevin.com
Address:  192.168.100.10
 
名称:    blog.kevin.com
Address:  192.168.100.40
 
>

三:配置主从服务器:

通过前面的操作,DNS主服务器已经配置完毕并能正常工作。启动第2台CentOS主机,将其配置为第1台DNS服务器的从服务器,使得第1台主机上DNS数据能通过网络传输到第2台。

1:编辑/etc/named.conf文件,修改监听IP地址为any

vi /etc/named.conf
 
listen-on port 53 { any; };
allow-query     { any; };

2:编辑/etc/named.rfc1912.zones,建立或从第1台主机复制所需要的正向/反向查找区域文件(从服务器的区域解析库文件应当是从主服务器加载过来的,所以无需创建区域解析库文件。),并修改内容,将type类型改为slave

[root@likevin ~]# vi /etc/named.rfc1912.zones
 
zone "kevin.com" IN {
        type slave;                            //类型
        masters {192.168.100.10;};             //主机
        file "slaves/kevin.com.zone";          //配置文件存放地点和名称
        masterfile-format text;                //文档类型
};
 
zone "100.168.192.in-addr.arpa" IN {
        type slave;
        masters {192.168.100.10;};
        file "slaves/192.168.100.arpa";
        masterfile-format text;
};

3:重启named服务,检查下slaves文件夹下有没有从主机传送来的文件

[root@likevin ~]# systemctl restart named
[root@likevin ~]# rndc reload
server reload successful
[root@likevin ~]# ll /var/named/slaves/
总用量 8
-rw-r--r-- 1 named named 517 12月 18 16:14 192.168.100.arpa
-rw-r--r-- 1 named named 349 12月 18 16:14 kevin.com.zone
[root@likevin ~]# vi /var/named/slaves/192.168.100.arpa
 
$ORIGIN .
$TTL 86400      ; 1 day
100.168.192.in-addr.arpa IN SOA 100.168.192.in-addr.arpa. rname.invalid. (
                                0          ; serial
                                86400      ; refresh (1 day)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                10800      ; minimum (3 hours)
                                )
                        NS      dns.kevin.com.
$ORIGIN 100.168.192.in-addr.arpa.
10                      PTR     dns.kevin.com.
20                      PTR     win.kevin.com.
30                      PTR     www.kevin.com.
40                      PTR     blog.kevin.com.
dns                     A       192.168.100.10
[root@likevin ~]# vi /var/named/slaves/kevin.com.zone
 
$ORIGIN .
$TTL 86400      ; 1 day
kevin.com               IN SOA  kevin.com. rname.invalid. (
                                0          ; serial
                                86400      ; refresh (1 day)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                10800      ; minimum (3 hours)
                                )
                        NS      kevin.com.
                        A       192.168.100.10
$ORIGIN kevin.com.
blog                    A       192.168.100.40
dns                     A       192.168.100.10
win                     A       192.168.100.20
www                     A       192.168.100.30

到此这篇关于centos7下搭建DNS服务器介绍的文章就介绍到这了,更多相关centos7搭建DNS服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Linux中配置双机SSH信任 操作说明

    Linux中配置双机SSH信任 操作说明

    本篇文章小编为大家介绍,Linux中配置双机SSH信任 操作说明。需要的朋友参考下
    2013-04-04
  • Linux下Squid配置详解 Squid代理服务器配置

    Linux下Squid配置详解 Squid代理服务器配置

    本文介绍Linux下非常著名、常用的Squid代理服务器的使用,并着重讲述如何使用其提供的访问控制策略,来保证代理服务器的合法使用。
    2009-10-10
  • Linux远程访问及控制方式

    Linux远程访问及控制方式

    SSH(Secure Shell)是一种协议,用于安全地通过不安全的网络进行远程登录和其他网络服务,OpenSSH是SSH协议的一种开源实现,它支持数据加密,能有效防止信息泄露,适用于多种操作系统,SSH配置包括服务端和客户端,可以通过密码或密钥对验证方式进行身份验证
    2024-09-09
  • Angular.JS中指令的命名规则详解

    Angular.JS中指令的命名规则详解

    这篇文章主要给大家介绍了关于Angular.JS中指令命名规则的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-05-05
  • CentOS7 mini的安装和静态ip设置教程

    CentOS7 mini的安装和静态ip设置教程

    本篇文章主要介绍了CentOS7 mini的安装和静态ip设置教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • xshell5连接不到虚拟机linux的问题及解决

    xshell5连接不到虚拟机linux的问题及解决

    这篇文章主要介绍了xshell5连接不到虚拟机linux的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Linux 下安装pip包的方法

    Linux 下安装pip包的方法

    这篇文章主要介绍了Linux 下安装pip包的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • Linux中Centos7搭建Hadoop服务步骤

    Linux中Centos7搭建Hadoop服务步骤

    本篇文章给大家详细讲述了Linux中Centos7搭建Hadoop服务步骤,对此有需要的读者朋友们可以参考下。
    2018-02-02
  • linux服务器系统CentOS、uBuntu、Gentoo、FreeBSD、Debian的比较

    linux服务器系统CentOS、uBuntu、Gentoo、FreeBSD、Debian的比较

    最近一直都是在玩ubuntu的,但是做web服务器的CentOS还是经常被用到,自己也糊涂了
    2012-12-12
  • Linux 常用文本处理命令和vim文本编辑器

    Linux 常用文本处理命令和vim文本编辑器

    这篇文章主要介绍了Linux 常用文本处理命令和vim文本编辑器,本文给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-08-08

最新评论