Centos搭建dns服务器

文章目录

  • 一、DNS服务器域名概述
  • 二、搭建DNS环境
  • 三、配置DNS服务器
    • 1.安装DNS服务器
    • 2.修改DNS主配置文件/etc/named.conf
    • 3.新建正向区域文件
    • 4.新建反向区域文件
  • 四、测试DNS服务器是否配置成功
    • 1.将文件“/etc/named.conf”、“/var/named/xxx.com.zone”、“/var/named/3.168.192.in-addr.arpa.zone”所属组改为named
    • 2.关闭防火墙,重启服务器
    • 3.客户端验证
  • 五.关于DNS的常用命令
    • 1.启动、停止、重启与自启DNS服务
    • 2.DNS服务故障排除
  • 总结


Centos是一个分布式名称管理与映射系统,它的
主要工作就是ip地址与域名之间的相互翻译及其对域名地址映射数据库的管理。


提示:以下是本篇文章正文内容,下面案例可供参考

一、DNS服务器域名概述

域名的形式往往如下所示:
www.xxx.com
其中,“com“ 称为顶级域名,”xxx“ 称为二级域名,”www“ 称为三级域名。每级之间用符号 ”.“ 相隔。
从中可以看出域名采用逆序,即越靠后,域名等级越高,越靠前,域名等级越低,形成了典型的树状结构,从而实现为域名的分布式管理提供了可能。

二、搭建DNS环境

两台centos7,一台作为DNS服务器,一台作为DNS客户端
DNS服务器:ip:192.168.3.5/24
dns:192.168.3.5
DNS客户端:ip:192.168.3.6/24
dns:192.168.3.5

三、配置DNS服务器

1.安装DNS服务器

使用 yum install vim bind* -y 安装vim和DNS服务器

yum install vim bind*-y

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

vim /etc/named.conf
options {
        listen-on port 53 { any; };//"127.0.0.1"改为“any”
        listen-on-v6 port 53 { ::1; };
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };//"localhost"改为“any”

        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.root.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging { 
        channel default_debug { 
                file "data/named.run";
                severity dynamic;
        };  
};         

zone "." IN { 
        type hint;
        file "named.ca";
};  
zone "xxx.com" { //增加正向解析区域
        type master;//类型为master
        file "xxx.com.zone";//区域为解析文件为“/var/named/xxx.com”
};  
zone "3.168.192.in-addr.arpa" { //增加反向解析区域为“3.168.192.in-addr.arpa”
        type master;//类型为“master”
        file "3.168.192.in-addr.arpa.zone";//区域解析文件为“/var/named/3.168.192.in-addr.arpa.zone”
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

3.新建正向区域文件

vim /var/named/xxx.com.zone

$TTL 1D
@       IN SOA  xxx.com. root.xxx.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      dns.xxx.com.
dns     IN      A       192.168.3.5
www     IN      A       192.168.3.5

4.新建反向区域文件

vim /var/named/3.168.192.in-addr.arpa.zone

$TTL 1D
@       IN SOA  3.168.192.in-addr.arpa. root.xxx.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      dns.xxx.com.
5       IN      PTR     dns.xxx.com.
5       IN      PTR     www.xxx.com.

四、测试DNS服务器是否配置成功

1.将文件“/etc/named.conf”、“/var/named/xxx.com.zone”、“/var/named/3.168.192.in-addr.arpa.zone”所属组改为named

chgrp named /etc/named.conf
chgrp named /var/named/xxx.com.zone
chgrp named /var/named/3.168.192.in-addr.apra.zone

2.关闭防火墙,重启服务器

systemctl stop firewalld
systemctl restart named

3.客户端验证

使用nslookup验证
在这里插入图片描述

五.关于DNS的常用命令

1.启动、停止、重启与自启DNS服务

查看进程状态: systemctl status named
重启dns服务器:systemctl start named
关闭dns服务器: systemctl stop named
重启dns服务器: systemctl restart named
重新加载dns服务器:systemctl reload named
dns开机自动启动:systemctl enable named
取消dns开机自动启动:systemctl disable named

2.DNS服务故障排除

nslookup :测试域名解析情况
netstat -an | grep 53: 检查TCP或者UDP的53号端口情况
named-checkconf -z /etc/named.conf: 检查配置文件是否错误


总结

DNS服务可以实现域名的正西解析和反向解析,为其他涉及域名的服务器如web提供了实现的基础。
DNS服务的配置主要涉及named.conf文件的配置以及区域文件的配置两部分。named.conf主要用来定义区域。区域文件即为区域DNS数据库。DNS的解析过程正是通过查询这些资源记录来完成的。

要在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服务器地址来使用它。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值