DNS域名解析服务

DNS

DNS的定义

DNS是"域名系统"的英文缩写。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。
每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

DNS系统的作用

正向解析:根据域名查找对应的IP地址
反向解析:根据IP地址查找对应的域名
DNS系统的分布式数据结构
在这里插入图片描述

域名结构

●http:// www . sina .com. cn. /
●http:/l主机名.子域.二级域.J顶级域根域/
●树状结构最顶层称为根域,用".“表示,相应服务器称为根服务器,整个域名空间解析权都归根服务器所有,但根服务器无法承担庞大的负载,采用"委派"机制,在根域下设置了一些顶级域,然后将不同顶级域解析权分别委派给相应的顶级域服务器,如将com域的解析权委派给com域服务器,以后但凡根服务器收到以com结尾的域名解析请求,都会转发给com域服务器,同样道理,为了减轻顶级域的压力,又下设了若干二级域,二级域又下设三级域或主机。
●根域:位于域名空间最顶层,一般用一个”.”表示
●顶级域:一般代表一种类型的组织机构或国家地区,如.net(网络供应商)、.com (工商企业)、.org (团体组织)、.edu(教育机构)、.gov(政府部门)、.cn (中国国家域名)
●二级域:用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家网络部门统一管理;
如.cn顶级域名下面设置的二级域名.com.cn、.net.cn、.edu.cn
●子域:二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名
●主机:主机位于域名空间最下层,就是一台具体的计算机,如www、mail都是具体的计算机名字,可www.sina.com.cn.mail.sina.com.cn.来表示,这种表示方式称为 FgDM(完全合格域名),也是这台主机在域名中的全名
●DNS域名解析方式:
正向解析:根据域名查找对应的IP地址
反向解析:根据1P地址查找对应的域名
●DNS如何解析:寻找跟与服务器解析根域,查找我们用的是什么顶级域,会把解析全委派给顶级域,顶级域会查看我们用的是什么二级域,然后分派给二级域,二级域会查看我们用的什么子域,然后委派给子域,子域会查看我们用的主机名

DNS服务器类型:

(1)主域名服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件。
(2)从域名服务器:当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库。
(3)缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但没有域名数据库。它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNs服务器作为解析来源。
(4)转发域名服务器:负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。

构建DNS域名解析服务器步骤

1.安装bind软件包
yum install -y bind
2.配置正向解析
(1)先查看需要修改的配置文件所在路径
rpm -qc bind                  #查询bind软件配置文件所在路径
/etc/named.conf               #主配置文件
/etc/named.rfc1912.zones      #区域配置文件
/var/named/named. localhost   #区域数据配置文件
(2)修改主配置文件
vim /etc/named.conf
options {
    listen-on port 53 { 192.168.80.10;};●监听53端口,ip地址使用提供服务的本地IP,也可用any表示所有
#    listen-on-v6 port 53 {: :i; };     #ipv6行如不使用可以注释掉或者删除
    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     { 192.168.80.0/24; 172.16.100.0/24; };  ●允许使用本DNs解析服务的网段,也可用any代表所有
    ......
}
zone "."TN {              #正向解析"."根区域
       type hint;         #类型为根区域
       file "named.ca" ;  #区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};   
include "/etc/named.rfc1912.zones";   #包含区域配置文件里的所有配置  
(3)修改区域配置文件,添加正向区域配置
vim /etc/named.rfc1912.zones      #文件里有模版,可复制粘贴后修改
zone "benet.com" IN{              ●正向解析"benet.com"区域
       type master;               #类型为主区域
       file "benet. com. zone" ;  ·指定区域数据文件为benet. com. zone
       allow-update { none; };
};
(4)配置正向区域数据文件
cd /var/named/
cp -p named.localhost benet. com.zone                        #保留源文件的权限和属主的属性复制
vim /var/named/benet.com.zone
$TTL 1D                                                      #有效解析记录的生存周期
@       IN SOA benet.com. admin.benet.com.(                  #"@”符号表示当前的DNS区域名
                                       0      ; serial       #更新序列号,可以是10位以内的整数
                                       1D     ; refresh      #刷新时间,重新下载地址数据的间隔
                                       1H     ; retry        #重试延时,下载失败后的重试间隔
                                       1w     ; expire       #失效时间,超过该时间仍无法下载则放弃
                                       3H )   ; minimum      #无效解析记录的生存周期
       NS       benet.com.                                     #记录当前区域的DNS服务器的名称
       A        192.168.80.10                                  #记录主机IP地址
IN  MX 10       mail.benet.com.                                #MX为邮件交换记录,数字越大优先级越低
www IN A        192.168.80.10                                  #记录正向解析www.benet .com对应的IP
mail IN A       192.168.80.11   
ftp  IN CNAME   www                                        #CNAME使用别名,ftp是www的别名   
*    IN A       192.168.80.100                             #泛域名解析,“*"代表任意主机名       
(5)启动服务,关闭防火墙
systemctl start named  
systemctl stop firewalld
setenforce 0
#如果服务启动失败,可以查看日志文件来排查错误
tail -f /var/log/messages
#如果服务启动卡住,可以执行下面命令解决
rndc-confgen -r /dev/urandom -a       
(6)在客户端的域名解析配置文件中添加DNs服务器地址
vi /etc/resolv.conf     #修改完后立即生效
nameserver 192.168.80.10
或
vi /etc/sysconfig/network-scripts/ifcfg-ens33    #修改完后需要重启网卡
DNS1=192.168.80.10
systemctl restart network

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

反向解析

(1)修改区域配置文件,添加反向区域配置
vim /etc/named.rfc1912.zones            #文件里有模版,可复制粘贴后修改
zone "80.168.192.in-addr.arpa" IN{     ●反向解析的地址倒过来写,代表解析192.168.80段的地址
       type master;
       file "benet.com.zone.local";   ●指定区域数据文件为benet.com.zone.local 
       allow-update { none; };
};      
(2) 配置反向区域数据文件
cd /var/named/
cp -p named.localhost benet.com.zone.local
vim /var/named/benet.com.zone.local
$TTL1D
@       IN SOA benet.com. admin.benet.com.(       #这里的"@"代表192.168.80段地址
                                         0         ; serial
                                         1D        ; refresh
                                         1H        ; retry  
                                         1W        ; expire
                                         3H )      ; minimum
         NS     benet.com. 
         A      192.168.80.10 
  200 IN PTR    www.benet.com.  
  100 IN PTR    mail.benet.com. 
  (#PTR为反向指针,反向解析192.168.80.200地址结果为www.benet.com)
(3)重启服务进行测试
systemctl restart named
host 192.168.80.200
nslookup 192.168.80.200                 

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

构建主从域名服务器

(1)修改主域名服务器的区域配置文件,修改正、反向区域配置
vim /etc/named.rfc1912.zones
zone "benet. com" IN{
        type master;                           ●类型为主区域
        file "benet. com. zone";
        allow-transfer { 192.168.80.11; };     ●允许从服务器下载正向区域数据,这里添从服务器的IP地址
};
Zone "80.168.192.in-addr. arpa" IN{
        type master;
        file "benet.com. zone.local";
        allow-transfer { 192.168.80.11; };
};    
(2)修改主配置文件
vim /etc/named.conf
options {
listen-on port 53 { 192.168.80.11; };    ●监听53端口,ip地址使用提供服务的本地Ie即可,也可用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";
allow-query      { any; };            ●允许使用本DNS解析服务的网段,也可用any代表所有
……
}
(3)修改从域名服务器区域配置文件,添加正、反区域配置
vim /etc/named.rfc1912.zones
zone "benet.com"IN {
        type slave;                         ●类型为从区域
        masters { 192.168.80.10; };         ●指定主服务器的IP地址
        file  "slaves/benet.com.zone" ;      ●下教的区域数据文件保存到slaves/目录下
};        
zone "80.168.192.in-addr.arpa" IN {
        type slave;
        masters { 192.168.80.10; };
        file  "slaves/benet.com.zone.local";
};
(4)主、从都重启动服务,并查看区域数据文件是否已下载成功
systemctl restart named
ls -l /var/named/slaves/
(5)在客户端的域名解析配置文件中添加从DNS服务器地址
echo  "nameserver 192.168.80.11" >> /etc/resolv.conf
(6)测试
host 192.168.80.200
nslookup 192.168.80.200    

修改主服务器
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
修改从服务器
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在客户端的域名解析配置文件中添加从DNS服务器地址
在这里插入图片描述
在这里插入图片描述

域名服务器的分离解析

先关机并装一个新的网卡后重启
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置好网卡文件后安装bind软件
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

BIND软件安装

BIND (Berkeley Internet Name Daemon)

●BIND是应用最广泛的DNS服务程序
●官方站点: https://www.isc.orgl

相关软件包

●bind-9.9.4-37.el7.x86_64.rpm
●bind-utils-9.9.4-37.el7.x86_64.rpm
●bind-libs-9.9.4-37.el7.x86_64.rpm
●bind-chroot-9.9.4-37.el7.x86_64.rp

BIND服务

BIND服务器端程序

●主要玫丁于程序:l/usr/sbin/named
默认监听端口:53
●主配置文件
/etc/named.conf
●保存DNS解析记录的数据文件位于
/var/named/

BIND服务控制

●systemctl [statuslstart|stoplrestart] named.service

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值