DNS服务

本文详细介绍了如何在CentOS系统上配置DNS主服务器和从服务器,包括安装bind服务,修改named.conf配置文件以允许外部访问,创建正向和反向解析文件,以及设置从服务器来同步主服务器的数据。通过这个过程,可以实现自定义域名的解析服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DNS域名解析服务

DNS主服务器配置

先配置ip地址,dns配置文件中要保持一致,这里配的是192.168.10.1

[root@localhost ~]# yum -y install bind*
#通过yum的方式安装bind服务

[root@localhost ~]# vim /etc/named.conf
#编写bind服务的主配置文件,Centos7和Centos8略又不同,但要更改的部分是一样的
#省略部分内容
 12 options {
 13         listen-on port 53 { any; };   #更改为any                
 #指定域名服务监听的网络端口,默认是本机,不能对外提供服务,一般改为any ,表示任意主机,也可以删除;
 14         listen-on-v6 port 53 { ::1; };
 15         directory       "/var/named";                 
 #区域数据文件的默认存放位置,指定从/var/named目录下读取DNS数据文件;
 16         dump-file       "/var/named/data/cache_dump.db";               
 #域名缓存数据库文件的位置,当执行导出命令时将DNS服务器的缓存数据存储到指定的文件中;
 17         statistics-file "/var/named/data/named_stats.txt";
 #状态统计文件的位置,当执行统计命令时会将内存中的统计信息追加到该文件中;
 18         memstatistics-file "/var/named/data/named_mem_stats.txt";
 19         allow-query     { any; };   #更改为any
 #允许哪些客户端访问DNS服务,默认是本机,一般改为“any”,表示任意主机,也可以删除;
 
 #添加正向解析数据文件的信息 ,服务器类型是主区域,文件名为“zx”
 #区域类型:master(主区域);slave(辅助区域);hint(根区域)
 56 zone "sky.com" in {                             
 57         type master;   #类型为主区域
 58         file "zx";
 59 };
 
 #复制上面4行,添加反向解析数据文件的信息 ,服务器类型是主区域,文件名为“fx”
 60 zone "10.168.192.in-addr.arpa" in {
 61         type master;
 62         file "fx";
 63 };
 
#保存退出          

配置正向和反向解析文件

[root@localhost ~]# cd /var/named
[root@localhost named]# cp -p named.loopback zx
[root@localhost named]# cp -p named.loopback fx
#复制模板
#复制时应加“-p”选项,保留权限,
#否则复制的时候,其他人没有读取的权限,服务启动成功后,不会解析域名的。不然的话,执行以下命令:
[root@localhost named]# chmod o+r benet.com.zone
#给文件添加其他人可读的权限

#编写正向区域配置文件
[root@localhost named]# vim zx
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      dns.sky.com.        //最后是有 .  的,别掉了
dns     IN      A       192.168.10.1        //本机ip
www     IN      A       192.168.10.10
ftp     IN      CNAME   www

@:引用当前域名
IN:index记录
SOA:主从认证、授权方面的记录
nsl.benet.com.:主域名
serial:序列号。可以供从服务器判断何时获取新数据的。
refresh:指定多长时间从服务器要与主服务器进行核对,
retry:如果从服务器试图检查主服务器的序列号时,主服务器没有响应,则经过这个时间后将重新进行检查
expire:将决定从服务器在没有主服务器的情况下权威地持续提供域数据服务的时间长短
minimum:高速缓存否定回答的存活时间         


[root@localhost named]# vim fx
#编写反向区域配置文件
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
@       IN      NS      dns.sky.com.
1       IN      PTR     dns.sky.com.
10      IN      PTR     www.sky.com.


[root@localhost named]# systemctl restart named
#重启DNS服务

验证DNS解析

第一种方式:
[root@localhost named]# host dns.sky.com
dns.sky.com has address 192.168.10.1
[root@localhost named]# host -l sky.com
sky.com name server dns.sky.com.
dns.sky.com has address 192.168.10.1
www.sky.com has address 192.168.10.10
[root@localhost named]# host -l 192.168.10.1
1.10.168.192.in-addr.arpa domain name pointer dns.sky.com.

第二种方式:
[root@localhost named]# nslookup 
> dns.sky.com
Server:        127.0.0.1
Address:    127.0.0.1#53

Name:    dns.sky.com
Address: 192.168.10.1
> www.sky.com    
Server:        127.0.0.1
Address:    127.0.0.1#53

Name:    www.sky.com
Address: 192.168.10.10
> ftp.sky.com
Server:        127.0.0.1
Address:    127.0.0.1#53

ftp.sky.com    canonical name = www.sky.com.
Name:    www.sky.com
Address: 192.168.10.10
> 192.168.10.1
1.10.168.192.in-addr.arpa    name = dns.sky.com.
> 192.168.10.10
10.10.168.192.in-addr.arpa    name = www.sky.com.

搭建从域名服务器

配置ip,确保可以与主dns服务器正常通信,这里配置的是192.168.10.2

[root@localhost ~]# yum -y install bind*
#安装bind服务
[root@localhost ~]# vim /etc/named.conf
#编写主配置文件
#省略部分内容
 12 options {
 13         listen-on port 53 { any; };
 14         listen-on-v6 port 53 { ::1; };
 15         directory       "/var/named";
 16         dump-file       "/var/named/data/cache_dump.db";
 17         statistics-file "/var/named/data/named_stats.txt";
 18         memstatistics-file "/var/named/data/named_mem_stats.txt";
 19         allow-query     { any; };
 20         forwarders { 192.168.10.1; };
#转发器,本机解析不了转发到192.168.10.1

 57 zone "sky.com" in {
 58         type slave;
 #区域类型为辅助区域 
 59         masters { 192.168.10.1; };
 #主服务器为192.168.10.1
 60         file "slaves/zx";
 #复制下来的文件保存到/var/named/slaves/目录下
 61         allow-transfer { 192.168.10.1; };
 #允许从服务器上下载正向区域配置文件
 62 };
 63 zone "10.168.192.in-addr.arpa" {
 64         type slave;
 65         masters { 192.168.10.1; };
 66         file "slaves/fx";
 67 };     

验证:
 #检查named服务数据库配置文件(也可以不检查
[root@localhost slaves]# named-checkconf -z /etc/named.conf
zone localhost.localdomain/IN: loaded serial 0
zone localhost/IN: loaded serial 0
zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0
zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0
zone 0.in-addr.arpa/IN: loaded serial 0

[root@localhost /]# systemctl restart named
#从主域名服务器复制的正向和反向区域文件
[root@localhost /]# ls /var/named/slaves/
fx  zx

如果没有就关闭主dns服务器的防火墙,方法:
[root@localhost named]# systemctl stop firewalld.service 
[root@localhost named]# setenforce 0

[root@localhost yum.repos.d]# nslookup 
> dns.sky.com
Server:        127.0.0.1
Address:    127.0.0.1#53

Name:    dns.sky.com
Address: 192.168.10.1
> www.sky.com
Server:        127.0.0.1
Address:    127.0.0.1#53

Name:    www.sky.com
Address: 192.168.10.10
> 192.168.10.1
1.10.168.192.in-addr.arpa    name = dns.sky.com.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值