温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

centos7下如何搭建DNS服务器

发布时间:2021-12-20 09:08:22 来源:亿速云 阅读:148 作者:小新 栏目:开发技术

小编给大家分享一下centos7下如何搭建DNS服务器,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

    一:项目环境:

    主机角色IP地址功能
    dns.kevin.comDNS服务器192.168.100.10提供域名解析
    win.kevin.comDNS客户端192.168.100.20测试域名解析是否正常
    www.kevin.comWEB服务器192.168.100.30站点服务器
    blog.kevin.comFTP服务器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服务器”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI