DNS域名解析服务

目录

一、BIND域名服务基础

1.DNS系统的作用

DNS是什么

DNS系统的作用

2.DNS协议及端口号

3. 域名结构

4.查询方式

递归查询

迭代查询

递归与查询的区别

5.DNS系统类型

缓存域名服务器

主域名服务器

从域名服务器

二、BIND软件安装及配置文件

1.软件安装

2.BIND主配置文件named.conf

3.修改主要配置文件

4.BIND服务

BIND服务器端程序

BIND服务控制

6.配置正向区域数据文件

7.启动服务,关闭防火墙

 8.在客户端的域名解析配置文件中添加DNS服务器地址

9.测试DNS解析


一、BIND域名服务基础

1.DNS系统的作用

DNS是什么

DNS域名系统缩写为DNS,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

DNS系统的作用

正向解析:根据域名查找对应的IP地址

反向解析:根据IP地址查找对应的域名

DNS系统的分布式数据结构

2.DNS协议及端口号

DNS的默认端口为53,端口分为TCP和UDP。

TCP是用来做区域传送,多用于主从同步

在一个区中主DNS服务器从自己本机数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息。

UDP是用来做DNS解析的

域名:通常由一个完全合格域名(FQDN)标识。FQDN全称 Fully Qualified Domain Name,它能准确表示出其相对于DNS域树根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用"."分隔,对于DNS域google来说,其完全正式域名(FQDN)为google.com。

例如,google为 com域的子域,其表示方法为google.com,而 www 为 google域中的子域,可以使用wwrw .google.com.表示。

注意:通常,FQDN有严格的命名限制,长度不能超过256字节,只允许使用字符a-z,0-9,A-Z2和减号(-)。点号(.)只允许在域名标志之间(例如"google.com")或者FQDN的结尾使用。域名不区分大小,由最顶层到下层,可以分成:根域、顶级域、二级域、子域。

即全域名:同时带有主机名和域名的名称FQDN = Hostname + DomainName

如:www .baidu . com.

注意:最前面的一定是主机,最后一个点表示根域,通常是省略不写的,但实际上:www.abc.com=www .abc.com.

3. 域名结构

http://www.sina.com.cn./

http://主机名、子域、二级域、顶级域、根域/

一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区)

.com(工商 企业)

.net(网络供应商)

.edu(教育机构)

.cn(中国国家域名)

.org(团体组织)

.gov(政府部门)

二级DNS服务器:专门负责二级域名的解析

.net.cn

.deu.cn

.com.cn

子域名DNS服务器:专门负责子域名的解析 也称为三级域名

.ina.com.cn

.pku.edu.cn

主机站点

tts9

tts6

mail

www

4.查询方式

递归查询

正向解析查询过程

  • 先查本机的缓存记录
  • 查询hosts文件
  • 查询dns域名服务器,交给dns域名服务器处理

以上过程总结来说:我要一个答案你会直接给我结果。

递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果 DNS服务器本地没有存储查询DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

客户机发送请求后自己只用等待结果即可,中间具体过程交给服务器实现。

迭代查询

DNS服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是告诉客户机另一台 DNS服务器地址,客户机再向这台DNS服务器提交请求,依次循环直到返回查询的结果为止。

客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反。

递归与查询的区别

递归查询返回的查询结果要么是所要查询的IP地址,要么是报错,表示无法查询所需要的IP地址。

迭代查询客户端只发一次请求,要求对方给出最终结果。

迭代:客户端发出一次请求,对方如果没有授权回答,它就会返回一个能解答这个查询的其它名称服务器列表,客户端会再向返回的列表中发出请求,直到找到最终负责所查域名的名称服务器,从它得到最终结果。
授权回答:向dns服务器查询一个域名,刚好这个域名是本服务器负责,返回的结果就是授权回答。

从递归和迭代查询可以看出

  • 客户端-本地DNS服务器:这部分属于递归查询
  • 本地DNS服务端—外网:这部分属于迭代查询

递归查询时,返回的结果只有两种:查询成功或查询失败

迭代查询又称作重指引,返回的是最佳的查询点或者主机地址。

5.DNS系统类型

缓存域名服务器

  • 也称为DNS高速缓存服务器
  • 通过向其他域名服务器查询获得域名-> IP地址记录
  • 将域名查询结果缓存到本地,提高重复查询时的速度

主域名服务器

  • 特定DNS区域的权威服务器,具有唯一性
  • 负责维护该区域内所有域名->IP地址的映射记录
  • 需要自行建立所负责区域的地址数据文件

从域名服务器

  • 也称为辅助域名服务器,是对主域名服务器的热备份
  • 其维护的域名->IP地址记录来源于主域名服务器
  • 需要从主域名服务器自动同步区域地址数据库

二、BIND软件安装及配置文件

1.软件安装

首先使用 rpm -qc bind查看是否安装,若未安装使用yum进行安装

 安装完成

2.BIND主配置文件named.conf

[root@localhost ~]# rpm -qc bind  //查询bind软件配置文件所在路径

/etc/logrotate.d/named                  //主配置文件  控制系统全局

/etc/named.rfc1912.zones            //区域配置文件  控制具体单个区域

/var/named/named.localhost        //区域数据配置文件  区域信息

3.修改主要配置文件

vim /etc/named.conf

options {
  listen-on-v6 poet 53 { 192.168.109.11; };              #监听53端口,IP地址使用提供服务的本地IP,也可用any代表所有
#   listen-on-v6 port 53 { : :1; };                      #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 "." IN {                                            #正向解析“. "根区域
        type hint;                                       #类型为根区域
        file "named.ca";                                 #区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};

include "/etc/named. rfc1912. zones";     #包含区域配置文件里的所有配置

4.BIND服务

BIND服务器端程序

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

BIND服务控制

systemctl [status start stop restart] named.service

6.配置正向区域数据文件

cd /var/named/
cp -p named.localhost zhangbin.com.zone                      #保留源文件的权限和属主的属性复制
vim /var/named/zhangbin.com.zone


$TTL 1D                                                  #设置缓存解析结果的有效时间
@       IN SOA zhangbin.com. admin.zhangbin.com. (
                                           0; serial .
                                           1D; refresh
                                           1H; retry
                                           1W; expire
                                           3H ) ; minimum
         NS    zhangbin.com.                      #记录当前区域的DNS服务器的名称
         A     192.168.109.11                  #记录主机IP地址
IN   MX  10    mail.zhangbin.com.                 #MX为邮件交换记录,数字越大优先级越低
www  IN  A     192.168.109.11                  #记录正向解析www.benet.com对应的IP
mail IN  A     192.168.109.100
ftp  IN CNAME  www                              #CNAME使用别名,ftp是www的别名
*    IN   A    192.168.109.200                  #泛域名解析,“*"代表任意主机名
 

  • #"@"这里是一个变量,当前dns区域名
  • #SOA记录中的更新序列号用于同步主、从服务器的区域数据,当从服务器判断区域更新时,若发现主服务器中的系列号与本地区域数据中的序列号相同,则不会进行下载。
  • # "benet.com."此为完全合格域名(FQDN),后面有关"."不能漏掉
  • #"admin.benet.com."表示管理员邮箱,这里的"@"符号已有其他含义,所以用"."代替
  • #IN 表示internet 

7.启动服务,关闭防火墙

systemctl  start  named

systemctl  stop  firewalld

setenforce  0

#如果服务启动失败,可以查看日志文件来排查错误

tail -f /var/log/messages

#如果服务启动卡住,可以执行下面命令解决

rndc-confgen -r /dev/urandom -a 

对域名语法进行检查

named-checkconf -z /etc/named.conf

 

 8.在客户端的域名解析配置文件中添加DNS服务器地址

plan 1:
vim /etc/resolv.conf                                      #修改完后立即生效
nameserver 192.168.109.11

cat /etc/resolv.conf


plan 2:
vim /etc/ sysconfig/network- scripts/ ifcfg-ens33         #修改完后需要重启网卡
DNS1=192.168.109.11

systemctl restart network

 

9.测试DNS解析

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值