DNS域名解析服务

一 BIND 域名服务基础

1 DNS 系统的作用及基础

1.1 DNS 系统的作用

DNS系统在网络中的作用就是维护着一个地址数据库,其中记录了各种主机域名与IP地址的对应关系,以便为客户程序提供正向或者反向的地址查询服务,及正向解析和反向解析。
正向解析:根据域名查相对应的IP地址
反向解析:根据IP地址查相对应的域名
DNS系统的分布式数据结构
在这里插入图片描述

1.2 DNS 系统的类型

实际上,每一台DNS服务器都只负责管理一个有限范围(一个或几个域)内的主机域名和IP地址的对应关系,这些特定的DNS域或IP地址段称为“zone”(区域)。根据地址解析的方向不同,DNS区域相应地分为正向区域(包含域名到IP地址的解析记录,)和反向区域(包含IP地址到域名的解析记录)。
根据所管理的区域数据的来源不同,DNS系统可以分为不同的类型。在同一台DNS服务器中,相对于不同的区域来说,也拥有不同的身份。如下常见的几种类型:
在这里插入图片描述
在这里插入图片描述

2 BIND 的安装和配置文件

BIND 的安装和控制
BIND不是唯一能够提供域名服务的DNS服务程序,但它却是应用最为广泛的,BIND可以运行在大多数Linux/UNIX主机中。其官方站站点为https://www/isc/org/。

2.1 安装BIND 软件

系统光盘自带了BIND服务的安装软件,可以用yum进行安装,主要包括以下几个软件包:在这里插入图片描述
各软件包的主要作用如下。
bind:提供了域名服务的主要程序及相关文件
bind-utils:提供了对DNS服务器的测试工具程序,如nslookup等
bind-libs:提供了bind,bind-utils需要使用的库函数
bind-chroot:为BIND服务提供一个伪装的根目录(将/var/named/chroot文件夹作为BIND的根目录),以提高安全性

2.2 BIND 服务

在这里插入图片描述
BIND 服务的配置文件
使用BIND软件构建域名服务时,主要涉及两种类型的配置文件:主配置文件和区域数据文件。其中,主配置文件用于设置named服务的全局选项、注册区域及访问等各种运行参数;区域数据文件用于存放某个DNS区域的地址解析记录(正向或反向记录)。

2.2.1 主配置文件
  1. 在这里插入图片描述
  2. 在这里插入图片描述
2.2.2 区域数据配置文件
  1. 在这里插入图片描述
  2. 在这里插入图片描述
  3. 在这里插入图片描述
2.2.3 区域数据配置文件的特殊应用

在这里插入图片描述

2.2.4 对配置文件进行语法检查

在这里插入图片描述

二 构建缓存域名服务器

  • 缓存域名服务器通常架设在公司的局域网内,主要目的是提高域名解析的速度,减少对互联网访问的出口量。
  1. 建立主配置文件named.conf
[root@localhost ~]# vi /etc/named.conf
options {
        listen-on port 53 { 20.0.0.11; };
        listen-on-v6 port 53 { ::1; };
        forwarders { 8.8.8.8;114.114.114.114; };
        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; };

  1. 确认根域的区域数据文件named.ca
    根区域的区域数据文件默认位于/var/named/named.ca中,该文件记录了Internet中根域服务器的域名和IP地址等相关信息。
  2. 启动named 服务
    执行“systemctl stat named”命令,启动named服务。
  3. 验证缓存域名服务器
nslookup www.bdqn.com

三 构建主从域名服务器

3.1构建主域名服务器

  1. 设置主配置文件
[root@localhost ~]# vi /etc/named.conf
options {
        listen-on port 53 { 20.0.0.11; };
        listen-on-v6 port 53 { ::1; };
        forwarders { 8.8.8.8;114.114.114.114; };
        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; };
  1. 设置区域配置文件
vi /etc/named.rfc1912.zones
zone "bdqn.com" IN {
        type master;
        file "bdqn.com.zone";
        allow-transfer { 20.0.0.12; };
        also-notify { 20.0.0.12; };
};
zone "0.0.20.in-addr.arpa" IN {
        type master;
        file "20.0.0.arpa";
        allow-transfer { 20.0.0.12; };
        also-notify { 20.0.0.12; };
};
  1. 建立正、反向区域数据文件
[root@r1 ~]# cd /var/named/
[root@r1 named]# cp named.localhost bdqn.com.zone
[root@r1 named]# vi bdqn.com.zone 
$TTL 1D
@       IN SOA  bdqn.com. admin.bdqn.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       192.168.11.119
www IN  A       192.168.11.119
ftp IN  A       192.168.11.118
mail IN CNAME   www

[root@r1 named]# chown named:named /var/named/bdqn.com.zone
[root@r1 named]# cp named.loopback 20.0.0.arpa
[root@r1 named]# vi 20.0.0.arpa 
$TTL 1D
@       IN SOA  bdqn.com.admin.bdqn.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      bdqn1.com.
        A       20.0.0.100
119 IN  PTR     www.bdqn1.com.
120 IN  PTR     ftp.bdqn1.com.
121 IN  PTR     bbs.bdqn1.com.
  1. 记得开启named服务
systemctl start named

3.2 构建从域名服务器

  1. 设置主配置文件
[root@r2 ~]# vi /etc/named.conf 
options {
        listen-on port 53 { 20.0.0.12; };
        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";
        allow-query     { any; };
        
zone "bdqn.com" IN {
        type slave;
        masters { 20.0.0.11; };
        allow-notify { 20.0.0.11; };
        file "slaves/bdqn.com.zone";
};
zone "0.0.20.in-addr.arpa" IN {
        type slave;
        masters { 20.0.0.11; };
        allow-notify { 20.0.0.11; };
        file "slaves/20.0.0.arpa";
};
[root@r2 ~]# cd /var/named/slaves/
[root@r2 slaves]# ll
total 0
[root@r2 slaves]# systemctl start named
[root@r2 slaves]# ll
total 8
-rw-r--r-- 1 named named 400 Jul 30 01:29 20.0.0.arpa
-rw-r--r-- 1 named named 311 Jul 30 01:29 bdqn.com.zone
  1. 验证主域名服务器
[root@localhost ~]# vi /etc/resolv.conf 
nameserver 20.0.0.11
nameserver 20.0.0.12
[root@localhost ~]# nslookup www.bdqn.com
Server:         20.0.0.11
Address:        20.0.0.11#53

Name:   www.bdqn.com
Address: 192.168.11.119

[root@localhost ~]# nslookup 20.0.0.119
Server:         20.0.0.11
Address:        20.0.0.11#53

119.0.0.20.in-addr.arpa name = www.bdqn1.com.

[root@localhost ~]# nslookup 20.0.0.120
Server:         20.0.0.11
Address:        20.0.0.11#53

120.0.0.20.in-addr.arpa name = ftp.bdqn1.com.

[root@localhost ~]# nslookup 20.0.0.121
Server:         20.0.0.11
Address:        20.0.0.11#53

121.0.0.20.in-addr.arpa name = bbs.bdqn1.com.
[root@localhost ~]# vi /etc/resolv.conf 
#nameserver 20.0.0.11
nameserver 20.0.0.12
:wq
[root@localhost ~]# nslookup www.bdqn.com
Server:         20.0.0.12
Address:        20.0.0.12#53

Name:   www.bdqn.com
Address: 192.168.11.119

[root@localhost ~]# nslookup 20.0.0.119
Server:         20.0.0.12
Address:        20.0.0.12#53

119.0.0.20.in-addr.arpa name = www.bdqn1.com.

[root@localhost ~]# nslookup 20.0.0.120
Server:         20.0.0.12
Address:        20.0.0.12#53

120.0.0.20.in-addr.arpa name = ftp.bdqn1.com.

[root@localhost ~]# nslookup 20.0.0.121
Server:         20.0.0.12
Address:        20.0.0.12#53

121.0.0.20.in-addr.arpa name = bbs.bdqn1.com.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值