DNS:域名解析服务。
     PC访问DNS用的是  UDP  53端口;主辅同步数据用的是  TCP  53端口。    
     工作原理:当解析一台主机域名时,首先会访问电信、网通等提供的DNS服务器地址上的DNS服务器,去访问  .(根域),也就是根域(大概有13台),然后根域会返回(返回给这个请求它的DNS服务器)说知道com, cn  ,  org等域(也就是根与的子域),然后这时PC会拿这个域名(如:www.baidu.com)去访问根域提供的DNS服务器(也就是根的子域的服务器),这时就会提供baidu.com域的DNS服务器地址,然后PC访问这时的DNS服务器地址,从而找到baidu主机名对应的IP地址--最终的结果是由 PC 设置的 DNS服务器返回给PC的。(其中每一层返回的是DNS服务器,最终稿由PC中的DNS服务器返回给PC结果)
     此时PC就知道了 www.baidu.com 的IP地址
   
DNS的工作目录:
、   /var/named

配置文件中type的类型
     1、hint;一般是作为根  不需要动
     2、master;表示为主DNS
     3、slave;表示:辅DNS。
 
    递归查询:PC查询NDS服务器的过程, 当PC向DNS索要一个主机名的IP地址时,不管这个DNS服务器知不道,都会向外一层一层的查询,直至查询出结果。     
     迭代查询:DNS从根域开始查找到找到主机名称作迭代查询

DNS服务-笔记

DNS服务器用到的软件是 : bind
     安装DNS需要的工具包:
chroot:也就是把一个目录当成根,用户看到的是根,但是服务器看到的是某一个目录。

DNS服务-笔记

1、拷贝对应的配置文件。
需要注意的:bind读取配置文件的时,是chroot过的,也就是把 /var/named/chroot/ 这个目录当成了根
而我们的配置文件都是在   /etc/ 下的,所以需要将  /etc/named*  文件都拷贝到  /var/named/chroot/etc/ 目录下。
     用到的配置文件: /var/named/ 在这个目录中的。
     DNS的工作目录:/var/named/ 但是但是:做了chroot,这个根就不是系统的根了,而是:/var/named/chroot/ ,这时工作目录其实就变成了:/var/named/chroot/var/named/
     其实:bind运行的时候因为做了chroot,会感觉是在根下运行的,其实是在 /var/named/chroot/ 这个目录下运行的。所以需要将 /etc/ 下的配置文件拷贝到  /var/named/chroot/ 目录下
DNS服务-笔记

第一次拷贝  etc  需要的配置文件

DNS服务-笔记

1-1、将系统/var/named 中的DNS用到的配置文件及目录拷贝到  chroot  对应的目录当中
DNS服务-笔记

     这里拷贝了  data/   dynamic/  slaves/   name.*  供4个
DNSd 工作目录是:/var/named/  但是 因为做了chroot、所以这里的根不是系统的根,而是: /var/named/chroot/var/named/

DNS服务-笔记
2、DNS的主配置文件。位置是:/var/named/chroot/etc/ 

DNS服务-笔记
2-1、options选项参数
DNS服务-笔记
2-1-1、listen-on  port  53  {any;};
#any表示任意网卡的,也就是如果有多张网卡都会监听各个网卡的53端口。
2-1-2、listen-on-v6  port  53  { ::1;};
#关于IPv6的信息,不用管
2-1-3、directory  "/var/named";
#如果创建文件没有指定目录,这个文件就存在这个目录中。这里设置的是chroot后的默认路径,也就是,这里的根并不是系统的根,真正的目录是:
/var/named/chroot/var/named/
2-1-4、dump-fiel   statistics-file   memstatistics-file  做的统计信息
#不用管
2-1-5、allow-query  { localhost; };##修改为any
#允许哪些主机可以访问,localhost是本机,any是任何主机,如果是网段:192.168.30.0/24
2-1-6、recursion  yes;
#是否开启递归查询。当收到访问时,会向外 其他的DNS查找域名对应的IP地址,从而告诉PC这个域
名对应的IP地址。如果 no ,则只会查询当前DNS服务器管理域中的主机。如果对设置的主机或网段
的主机为no,则当这些主机访问的时外网的域名主机时直接放回找不到,不会向外做迭代查询。
设置当no的时候,设置哪些主机可以做递归查询:
allow-recursion  { 192.168.30.250;};
#注意格式 后面都是分号。

DNS服务-笔记
2-1-7、dnssec-enable  yes;    dnssec-validation  yes;    dnssec-lookaside  auto;
#这是 dnssec 的**,不用多管,默认即可。



2-2、日志处理。

DNS服务-笔记

2-3、定义管理的 zone(区) 这个域只是做的正向解析

这IN是:intent的意思。
DNS服务-笔记

DNS服务-笔记
type的类型
     1、hint;一般是作为根  不需要动
     2、master;表示为主DNS
     3、slave;表示:辅DNS。
type:master;
##作用表明这台DNS为主DNS服务器,每个域中有2台,一台主,一台辅,平时都是访问主,一旦主有问题辅就会立即生效自傲,并且平时主辅之间的数据都是同步的。 这样就不会让整个网络崩溃
##zone  "kun.cc"  对 "kun.cc" 这个域来说是主DNS,同时也可以是另一台DNS的辅。
##这个DNS会维护这个域中的所有主机名与IP地址的对应关系。这个对应关系就是一个文件(记录所有主机与IP地址的对应关系)。file 的名字可以任意写。但是要注意:写这个对应关系文件时内的格式。


编写域中主机与IP地址的对应关系:这个配置文件是放下chroot后的named目录下的
DNS服务-笔记

第一行很特殊:必须按照特定的方式来写。
     以@开头[是个变量。也就是定义的  kun.cc 这个域名]  
     SOA[验证的起始] server.kun.cc.[这个是当前的主机名,要注意后面的  点。如果没有这个点就变成了:server.kun.cc.kun.cc
     [email protected].[邮箱地址,如果DNS出现了问题就会向这个邮箱发送邮件,邮箱地址后也必须要有一个 点]  
     ( 
        202111 #这是***,作用:主辅2台DNS之间,辅服务器用于判断是否更新配置,如果辅判断***比存储的***大,则更新到本机配置。否则就不会接收
        1D #刷新的时间1D就是一天,辅服务器就会询问主发送请求,询问是否有更新。
        1H #重试时间;如果未收到主服务器的恢复,则会1小时重试一次。
        1W #1周后重试取消。
        3H  # 缓存时间 
     )
第二行:有多少台主机,就需要写多少台主机对应的IP地址。这些都是手工写的。
     @          NS          server.kun.cc   ###一行
     server.kun.cc     A     192.168.197.131
     www.kun.cc      A     192.168.197.88
     ftp.kun.cc          A     192.168.197.110
第一列:域名
第二列:class
     IN:用的最多的。其他的2个用到的不多
第三列:type类型
     A:address
     PTR:做反向解析。指针记录
     CNME:别名
     MX:后面跟的是主机名,指明这个域中哪一台是电子邮件服务器。
     NS:nameserver:指明这个域中哪一台是DNS服务器。
第四列:值

编写主机IP地址对应关系文件的格式:(完整版)--- 主机名对应IP地址都是手动编写的
DNS服务-笔记

要特别注意的是:
1、因为@在文件中已经有特殊含义,是个变量,代表了当前的域  kun.cc (在named.conf文件中定义的)。而后面的邮件地址中的@就不能使用了,所以使用 .点 来表示,当系统读到的时候会自动将这个点转换成@。

2、并且,如果主机名后面  没有加点的话,系统会自动补上  .kun.cc.
     比如:www.rhce.cc   可以写成:www

3、如果下一行的的列与上一行的列一样,可以省略不写,但是如果不一样则必须写。
     比如:如果这样写就表示 ftp:有2个IP地址了,一个是192.168.30.1  一个是:192.168.30.2。如下:

DNS服务-笔记
编写主机IP地址对应关系文件的格式:(简写后)
$TTL:表示存活期。黑色部分记录的存活期。

DNS服务-笔记

3、修改主机与IP地址对应关系文件的所属组  和  权限,否则启动服务时可能会报错。
     3-1、保存创建的文件属性。

DNS服务-笔记
     3-2、修改创建文件的所属组和权限;
如果不修改,启动服务的时候启动不起来。必须要注意主机与IP地址对应关系文件中的格式;

DNS服务-笔记
     3-3、如果启动服务时提示需要key;如果是--红帽  不需要---生成key的命令,

DNS服务-笔记
自己会生成这么个key,默认没有安装DNS后才有

DNS服务-笔记
     3-4、启动服务



4、添加防火强规则:
     DNS用的是   53端口 , 即有 TCP  , 也有  UDP :
当主辅DNS服务器进行数据同步的时候,使用的端口是TCP的53端口。
当客户端向DNS服务器查询主机名的时候,使用的端口是  UDP的 53端口。
DNS服务-笔记

     4-1、添加本地主机

DNS服务-笔记


     4-2、添加成功后查看域中的所有主机
          如果这是查询错误,是因为:4-1步骤中的本地主机没有添加。
DNS服务-笔记

     测试成功;需要注意的是,chroot/etc/named.conf 配置文件一定要配置正确,否则是解析不出来的


DNS服务-笔记
DNS服务-笔记

设置DNS反向解析,将IP地址转换成主机名

修改chroot后的 配置文件位置:/etc/named/chroot/etc/named.conf

DNS服务-笔记
DNS服务-笔记
type的类型

1、hint;一般是作为根  不需要动

     2、master;表示为主DNS

     3、slave;表示:辅DNS。

file "kun.cc.arpa" 这个文件所在目录是:chroot后的目录全目录是:注意文件权限必须是named
     /etc/named/chroot/var/named/
DNS服务-笔记

named目录下的:named.localhost 是个模版文件。创建主机名IP地址对应文件的时候可以拷贝这个文件,正向解析 和 反向解析都可以用这个模版文件。
DNS服务-笔记


反向解析

DNS服务-笔记

5、正向批量生成主机与IP地址的对应关系:特别要注意正向解析中的变量必须要与反向解析中的变量一致,否则反向解析不出对应的IP地址

     5-1、正向查看批量生成的主机IP对应关系

DNS服务-笔记
     5-2、反向解析批量生成

DNS服务-笔记
     5-2、反向查看解析批量生成的关系

DNS服务-笔记
     5-3、特别要注意的:
DNS服务-笔记


DNS服务-笔记


6、查询批量主机对应的IP地址---抓包


DNS服务-笔记
DNS服务-笔记

配置主辅DNS服务器---TSIG(事务签名)

这是在辅服务器操作的。---注意 zone 的格式。
DNS服务-笔记
除了添加zone(区)外还需要修改俩个地方
     1、listen-on  port  53  {any;}; --- 在辅服务器操作
     2、 allow-query  { any; }; --- 在辅服务器操作
     3、在主服务器操作的 ,在options中添加  --- 一定要注意格式的正确
DNS服务-笔记
allow-transfer      { 192.168.197.100; };   ---指明将数据发送给谁。也就是指明辅服务器

重启辅服务器即可将数据同步到辅服务器。但是会存在问题:如果有其他电脑占用了10IP,就会将数据同步到其他电脑上,这时候就需要下面的解决方法。

TSIG(事务签名)
存在的问题:只设置了IP地址并不安全,生成辅服务器需要**才可以真正接收数据、
     生成**:
DNS服务-笔记
DNS服务-笔记


在服务端配置文件中配置**信息--需要修改为:
     allow-transfer      {  key  xx; };
DNS服务-笔记

其中  xx  为**名称可随意起。
这些都是在主服务器配置的。指明客户端必须有**才可以正常通信同步数据。

DNS服务-笔记

在辅服务器设置**:

DNS服务-笔记

试图:当内网访问DNS的时候解析到的IP是内网的私有IP地址,而外网解析访问到的则是外网看到的。也就是同一个主机在一个DNS服务器上解析出2个IP地址 --- 并未实际操作里面的坑没有踩。 - -、
DNS服务-笔记
DNS服务-笔记


最下面2行 ,include  删除掉了。
当 aa 主机过来访问的时候,匹配的是  yy (上面)的试图,而当 bb 来访问的时候,匹配的是zz(下面)的试图--对应的  aa1.zone 需要再生成
DNS服务-笔记


需要做的:需要在对应的客户端上将DNS的服务地址改成  设置的DNS服务器IP地址


创建子域授权---如果要有子域,里面的事物需要删掉,不然可能会影响
1、在子(辅服务器)DNS服务上配置文件中
DNS服务-笔记

xx.zone的配置文件:

DNS服务-笔记


在主DNS服务器需要配置的---编辑的是aa.zone
DNS服务-笔记

aa.rhce.cc  ---指明子域中的DNS服务器是哪一台,然后再给这个DNS做一个解析。就可以了。
这时候,在子域解析主DNS服务器解析不出来,同样的在主服务器解析子域的DNS服务器也是解析不出来的。

修改主、子的配置文件

这是在子服务器其配置文件的修改
添加:forwarders { 192.168.30.250; }
     表明:子服务器解析不了的,转发给主服务器解析
这时候仍是子解析主服务器解析不成功,主服务器解析子服务器页是不成功,所以需要再将子、主服务器中的  三行(蓝色部分)注释掉。 最后2行  include 子、主都是删除掉的。?

DNS服务-笔记







相关文章:

  • 2022-12-23
  • 2021-09-16
  • 2021-12-25
  • 2021-07-11
猜你喜欢
  • 2021-05-22
  • 2021-08-22
  • 2021-08-13
  • 2022-12-23
  • 2021-06-24
  • 2021-09-09
  • 2021-10-20
相关资源
相似解决方案