当前位置 博文首页 > 粽子小黑的博客:求助帖!!! 实验 安装与配置DNS服务器

    粽子小黑的博客:求助帖!!! 实验 安装与配置DNS服务器

    作者:[db:作者] 时间:2021-08-11 12:53

    安装与配置DNS服务器

    实验目的

    • 掌握bind守护进程的启动方法
    • 掌握主DNS服务器的配置方法

    实验内容

    1. 安装和启动bind

    2. 安装和配置一个DNS服务器

    3. 在Linux平台下配置DNS客户端对DNS服务器进行域名查询测试

    实验环境

    DNS ServerDNS Client
    物理机Chromebook pixel2015LG Gram14 2019
    OSManjaro 19.01Windows 10
    IP192.168.43.60/24192.168.43.251/24

    实验步骤

    安装bind

    sudo pacman -S bind --noconfirm
    

    启动bind

    sudo systemctl start named
    sudo systemctl enable named
    

    bind配置

    使用 BIND 提供系统 DNS 服务

    sudo vim /etc/resolv.conf
    # 将nameserver 127.0.0.1写到最前面
    

    配置文件,修改bind的属性

    sudo vim /etc/named.conf
    

    默认的话是图这个样子
    在这里插入图片描述

    我的配置文件如下

    options {
    	listen-on 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;
       	allow-transfer	{ none;};
       };
       
    zone "." IN {
       	type hint;
    	file "named.ca";
    };
    
    zone "cs060.cuc.edu.cn" IN {                       #正向"cs666.cuc.edu.cn"区域
            type master;                          #类型为主要区域
            file "cs060.cuc.edu.cn.zone";              #区域数据文件
            //allow-update { none; };
    };
    
    zone "43.168.192.in-addr.arpa" in {              #反向"192.168.43.0/24"区域
            type master;
            file "192.168.43.arpa";                  #区域数据文件为 192.168.43.arpa
            //allow-update { none; };
    };
    

    hint其实就是DNS zone的root (.)。该zone最为重要。因为当DNS服务器在自己的数据库中找不到要查询的信息时,便会到hint(.)去查找。言外之意是说由 .(root) 声明的zone为hint类型的文件记录了世界上仅有的13台DNS服务器的相关信息(该文件默认为named.ca,此文件内容不需要进行任何修改)!

    编写正向DNS配置

    cd /var/named
    sudo cp -p named.localhost cs060.cuc.edu.cn.zone     #编辑正向区域数据配置文件,注意复制配置文件时,要保持源文件权限
    sudo vim cs060.cuc.edu.cn.zone    //编辑正向区域数据配置文件内容
    
    $TTL 1D
    @       IN SOA   cs060.cuc.edu.cn.   root.cs060.cuc.edu.cn. (
                                            0       ; serial
                                            1D      ; refresh
                                            1H      ; retry
                                            1W      ; expire
                                            3H )    ; minimum
    @       IN     NS    cs060.cuc.edu.cn.
    @       IN     A    192.168.43.60
    cs060.cuc.edu.cn      IN     A    192.168.43.60
    client.cuc.edu.cn     IN     A     192.168.43.251 
    

    编写反向配置文件

    sudo cp -p cs060.cuc.edu.cn.zone 192.168.43.arpa   #复制反向区域数据配置文件
    sudo vim 192.168.43.arpa
    
    $TTL 1D
    @       IN SOA   cs060.cuc.edu.cn.  root.cs060.cuc.edu.cn. (
                                            0       ; serial
                                            1D      ; refresh
                                            1H      ; retry
                                            1W      ; expire
                                            3H )    ; minimum
    @       IN     NS    cs060.cuc.edu.cn.            
    @       IN     PTR    cuc.edu.cn.            
    192.168.43.60     IN     PTR   cs060.cuc.edu.cn. 
    192.168.43.251      IN     PTR   client.cuc.edu.cn. 
    

    检查语法错误

    named-checkconf
    

    man:

    named-checkconf    [options]    [文件名]
    
    
    -h ===> 显示使用情况摘要并且退出。
    -z ===> 执行named.conf配置文件中找到的所有主要区域的测试负载
    -t <目录> ===> 将现有的目录切换至指定目录以便处理配置文件中的已包括伪命令
    
    
    
    注意:
    使用该命令是需要指定配置文件的路径,否则默认检测 /etc/named.conf 文件。
    
    named-checkzone
    

    man:

    named-checkzone    [options]    [区域名]    [区域文件名]
    
    
    
    -q ===> 安静模式 
    -d ===> 启用调试 
    -c <类别> ===> 指定区域类别,如果没有指定就使用IN
    -n <模式> ===> 检测NS记录
    -k <模式> ===> 使用指定的格式(fail | warn(默认) | ignore)执行检测
    -m <模式> ===> 检测MX
    -M <模式> ===> 检测MX是否使用CNAME
    -S <模式>  ===> 检测SRV记录是否使用CNAME
    

    在这里插入图片描述

    在这里插入图片描述

    重启named服务

    sudo systemctl restart named
    

    关闭防火墙

    iptables -F
    

    验证DNS解析

    在这里插入图片描述

    如图,不知道为什么不能解析,求大佬们帮忙

    参考网址:

    https://wiki.archlinux.org/index.php/BIND#Configuring_BIND_to_serve_DNSSEC_signed_zones

    https://www.howtoforge.com/two_in_one_dns_bind9_views

    cs